org.eclipse.debug.core.DebugException:com.sun.jdi.ClassNotLoadedException:检索数组的组件类型时发生类型未加载

2024-03-21

我正在开发AuthSample示例使用chase-paymentech Java SDK命名为'PaymentechSDK.jar' version 7.4.0。当我尝试执行示例代码时,遇到以下错误。我不明白有什么问题。有人可以指导我吗?

FYI - https://docs.oracle.com/cd/E69185_01/cwdirect/pdf/180/cwdirect_user_reference/SO04_16.htm https://docs.oracle.com/cd/E69185_01/cwdirect/pdf/180/cwdirect_user_reference/SO04_16.htm

org.eclipse.debug.core.DebugException: com.sun.jdi.ClassNotLoadedException: Type has not been loaded occurred while retrieving component type of array
TransactionProcessor failed to initialize
null
com.paymentech.orbital.sdk.util.exceptions.InitializationException
    at com.paymentech.orbital.sdk.configurator.Configurator.loadSecurityProviders(Configurator.java:349)
    at com.paymentech.orbital.sdk.configurator.Configurator.load(Configurator.java:393)
    at com.paymentech.orbital.sdk.configurator.Configurator.getInstance(Configurator.java:72)
    at com.paymentech.orbital.sdk.transactionProcessor.TransactionProcessor.<init>(TransactionProcessor.java:43)
    at com.chase.paymentech.AuthSample.main(AuthSample.java:20)

下面的代码供参考:

public class AuthSample {
    //Global Constants
    public final static int NORMAL_EXIT = 1;
    public final static int ERROR_EXIT = -1;

    public static void main(String[] args) {
        TransactionProcessorIF tp = null;
        try {
            tp = new TransactionProcessor();
        } catch (InitializationException iex) {
            System.err.println("TransactionProcessor failed to initialize");
            System.err.println(iex.getMessage());
            iex.printStackTrace();
            System.exit(ERROR_EXIT);
        }

        RequestIF request = null;
        try {
            //Tell the request object which template to use (see RequestIF.java)
            request = new Request(RequestIF.NEW_ORDER_TRANSACTION);

            //Basic Auth Fields
            request.setFieldValue("IndustryType", "EC");
            request.setFieldValue("MessageType", "A");
            request.setFieldValue("MerchantID", "700000000413");
            request.setFieldValue("BIN", "000002");
            request.setFieldValue("OrderID", "122003SA");
            request.setFieldValue("AccountNum", "4055011111111111");
            request.setFieldValue("Amount", "100");
            request.setFieldValue("Exp", "1209");

            // AVS Information
            request.setFieldValue("AVSname", "Jon Smith");
            request.setFieldValue("AVSaddress1", "4200 W Cypress St");
            request.setFieldValue("AVScity", "Tampa");
            request.setFieldValue("AVSstate", "FL");
            request.setFieldValue("AVSzip", "11111");

            // Additional Information
            request.setFieldValue("Comments", "This is Java SDK");
            request.setFieldValue("ShippingRef", "FEDEX WB12345678 Pri 1");

            //Uncomment the line below and modify to add a card security value (CVV2, CVC2 or CID)
            request.setFieldValue("CardSecVal", "111");
            request.setFieldValue("CardSecValInd", "1");

            //Display the request
            System.out.println("\nAuth Request:\n" + request.getXML());
        } catch (InitializationException ie) {
            System.err.println("Unable to initialize request object");
            System.err.println(ie.getMessage());
            ie.printStackTrace();
            System.exit(ERROR_EXIT);
        } catch (FieldNotFoundException fnfe) {
            System.err.println("Unable to find XML field in template");
            System.err.println(fnfe.getMessage());
            fnfe.printStackTrace();
            System.exit(ERROR_EXIT);
        } catch (Exception e) {
            e.printStackTrace();
            System.exit(ERROR_EXIT);
        }

        //Process the transaction
        ResponseIF response = null;
        try {
            response = tp.process(request);
        } catch (TransactionException tex) {
            System.err.println("Transaction failed, including retries and failover");
            System.err.println(tex.getMessage());
            tex.printStackTrace();
            System.exit(ERROR_EXIT);
        }

        //Display the response
        //This line displays the entire xml response on the java system console.
        System.out.println("--------------------------------------------------");
        System.out.println("\nResponse:\n" + response.toXmlString() + "\n");
        System.out.println("Response Attributes:");
        System.out.println("isGood=" + response.isGood());
        System.out.println("isError=" + response.isError());
        System.out.println("isQuickResponse=" + response.isQuickResponse());
        System.out.println("isApproved=" + response.isApproved());
        System.out.println("isDeclined=" + response.isDeclined());
        System.out.println("AuthCode=" + response.getAuthCode());
        System.out.println("TxRefNum=" + response.getTxRefNum());
        System.out.println("ResponseCode=" + response.getResponseCode());
        System.out.println("Status=" + response.getStatus());
        System.out.println("Message=" + response.getMessage());
        System.out.println("AVSCode=" + response.getAVSResponseCode());
        System.out.println("CVV2ResponseCode=" + response.getCVV2RespCode());
        System.out.println("--------------------------------------------------");
    }
}

log4j-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration>
    <appender name="eCommerce" class="org.apache.log4j.RollingFileAppender">
        <param name="File" value="${PAYMENTECH_LOGDIR}/eCommerce.log"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%5p,%d,[%c] - %m%n"/>
        </layout>
    </appender>
    <appender name="engine" class="org.apache.log4j.RollingFileAppender">
        <param name="File" value="${PAYMENTECH_LOGDIR}/engine.log"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%5p,%d,[%c] - %m%n"/>
        </layout>
    </appender>
    <category name="eCommerceLogger" additivity="false">        
    <priority value="INFO" />   
    <appender-ref ref="eCommerce"/>
    </category>
    <category name="engineLogger" additivity="false">       
    <priority value="INFO" />   
    <appender-ref ref="engine"/>
    </category>
    <category additivity="false" name="org.apache.commons.httpclient">
    <appender-ref ref="engine"/>
    </category>
    <category additivity="false" name="com.paymentech.orbital.sdk.util.ssl.StrictSSLProtocolSocketFactory">
    <appender-ref ref="engine"/>
    </category>
    <category additivity="false" name="httpclient">
    <appender-ref ref="engine"/>
    </category>
</log4j:configuration>

线路处理程序属性

##########################################################################
# PaymentechSDK_7.4.0
# Build Date: 11/14/2014
# Build Time: 10:06:20
##########################################################################

##########################################################################
# General Properties
##########################################################################
DTDVersion=PTI62

##########################################################################
# Transaction Processor Properties
##########################################################################
TransactionProcessor.poolSize=10
TransactionProcessor.retries=2

##########################################################################
# Response code configuration ('gateway' or 'host') 
##########################################################################
Response.response_type=gateway

##########################################################################
# Java Security Providers
##########################################################################
security.provider.1=sun.security.provider.Sun
security.provider.2=com.sun.rsajca.Provider
security.provider.3=com.sun.net.ssl.internal.ssl.Provider

##########################################################################
# IBM Security Providers
#For IBM JDK Websphere merchants
#comment out or remove the above sun security provider list
#uncomment the following IBM security provider  list 
#No need to have any sun related jar files in CLASSPATH for Orbital SDK
##########################################################################
#security.provider.1=com.ibm.crypto.provider.IBMJCE
#security.provider.2=com.ibm.security.jgss.IBMJGSSProvider

##########################################################################
# Engine Properties
##########################################################################
engine.class=com.paymentech.orbital.sdk.engine.https.HttpsEngine
engine.hostname=orbitalvar1.paymentech.net
engine.port=443
engine.hostname.failover=orbitalvar2.paymentech.net
engine.port.failover=443
engine.connection_timeout_seconds=90
engine.read_timeout_seconds=90
engine.authorizationURI=/authorize
engine.sdk_version=PaymentechSDK_7.4.0


#########################################################################
# Proxy Information
#########################################################################
#engine.proxyname=myproxyname
#engine.proxyport=myproxyport


# Type of SSL SocketFactory implementation to use
# The values for this property are as follows:
#   default
#   strict
engine.ssl.socketfactory=default

# To specify a non-default location for your truststore (cacerts) file, 
# uncomment and edit these two lines
#engine.ssl.trustore.filename=C:/jdk1.3.1_03/jre/lib/security/cacerts
#engine.ssl.trustore.passphrase=changeit


##########################################################################
# XML Templates Configuration
##########################################################################

# Templates
XMLTemplates.Request.NewOrder=%PAYMENTECH_HOME%/xml/NewOrder.xml
XMLTemplates.Request.EOD=%PAYMENTECH_HOME%/xml/EOD.xml
XMLTemplates.Request.FlexCache=%PAYMENTECH_HOME%/xml/FlexCache.xml
XMLTemplates.Request.MFC=%PAYMENTECH_HOME%/xml/MFC.xml
XMLTemplates.Request.Profile=%PAYMENTECH_HOME%/xml/Profile.xml
XMLTemplates.Request.Reverse=%PAYMENTECH_HOME%/xml/Reverse.xml
XMLTemplates.Request.Inquiry=%PAYMENTECH_HOME%/xml/Inquiry.xml
XMLTemplates.Request.AccountUpdater=%PAYMENTECH_HOME%/xml/AccountUpdater.xml
XMLTemplates.Request.SafetechFraudAnalysis=%PAYMENTECH_HOME%/xml/SafetechFraudAnalysis.xml


# Complex Type Mappings
XMLTemplates.Request.ComplexRoot.PC3Core=%PAYMENTECH_HOME%/xml/templates/PC3Core.inc
XMLTemplates.Request.ComplexRoot.PC3Core.RecursiveElement1=PC3LineItems
XMLTemplates.Request.ComplexRoot.PC3Core.RecursiveElement1.CountElement=PC3LineItemCount
XMLTemplates.Request.ComplexRoot.PC3Core.RecursiveElement1.EnforceGreaterThanZero=yes
XMLTemplates.Request.ComplexRoot.PC3Core.RecursiveElement1.MaxCount=98

XMLTemplates.Request.ComplexRoot.PC3LineItems=%PAYMENTECH_HOME%/xml/templates/PC3LineItems.inc
XMLTemplates.Request.ComplexRoot.PC3LineItems.ChildIndexElement=PC3DtlIndex

XMLTemplates.Request.ComplexRoot.SettleRejectBin=%PAYMENTECH_HOME%/xml/templates/SettleRejectBin.inc

XMLTemplates.Request.ComplexRoot.PriorAuthID=%PAYMENTECH_HOME%/xml/templates/PriorAuthID.inc
XMLTemplates.Request.ComplexRoot.FraudAnalysis=%PAYMENTECH_HOME%/xml/templates/FraudAnalysis.inc
XMLTemplates.Request.ComplexRoot.SoftMerchantDescriptors=%PAYMENTECH_HOME%/xml/templates/SoftMerchantDescriptors.inc

我认为这些信息足以理解这个问题。请帮忙。


看起来您正在尝试从此处检索 NULL 值

RequestIF 请求 = null;

请求=新请求(RequestIF.NEW_ORDER_TRANSACTION);

请检查并使用正确的对象更新它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

org.eclipse.debug.core.DebugException:com.sun.jdi.ClassNotLoadedException:检索数组的组件类型时发生类型未加载 的相关文章

  • 如何在 AngularJS 页面中接收 POST 请求?

    我们制作了一个 AngularJS 应用程序 用户打开一个 URL xyz com booking 填写表格 然后选择一些要购买的商品 之后 用户单击 购买 按钮并离开该站点前往支付网关站点 付款成功后 支付网关通过在回调 URL xyz
  • 将 Paypal 付款拆分为两个帐户

    我目前正在创建一个系统 允许管理员创建事件并允许个人注册这些事件 每次注册都会产生相关费用 注册者可以使用 PayPal 支付费用 创建活动后 管理员输入将存入资金的 PayPal 帐户 然后 我对每次注册收取固定价格作为服务费用 当付款提
  • Paypal 自适应付款返回网址调用两次

    我已经实现了贝宝自适应支付方法并使用网络流程 付款后 当我明确单击返回按钮时 返回网址会调用两次 但如果我等待自动重定向 则它只会调用一次 我无法理解为什么 return url 调用了两次 请指教 我正在使用下面的代码 public st
  • 使用 MVC 4 中的 POST 参数进行重定向以进行支付网关集成

    我正在尝试在 razor 中使用 mvc4 进行支付网关集成 我需要调用一个带有预填帖子表单的页面 使用以下方法 我正在形成帖子方法表单 private static string PreparePOSTForm string url Sy
  • 无法在支付网关的通用应用程序的 Web 视图中运行 JavaScript 警报

    我正在将支付网关集成到我的通用 Windows 应用程序中 我在 Web 视图中打开 URL 但是 webview 似乎无法显示 javascript 警报消息或弹出窗口 我在网上读到 我需要在包清单中添加网站的 url 以使 Script
  • payU 支付网关 Android 集成中缺少哈希参数

    我需要在我的 Android 应用程序中集成 payU 支付网关 但是当应用程序尝试获取哈希密钥时 它给我错误消息 哈希参数丢失 在演示应用程序中 有两个选项可以生成哈希值 if null salt generateHashFromServ
  • 向 WooCommerce 中的特定支付网关添加自定义百分比费用和固定成本

    在 WooCommerce 中 我需要为特定支付网关申请自定义手续费 按百分比成本收取的自定义手续费和按固定成本收取的自定义手续费 我有这个2 pieces代码 A 百分比成本 函数 PERCENTACE COST Add a custom
  • 向 Laravel 添加第三方库

    我有一个 RSA 算法库 由支付网关提供给我 当我执行 include app path PaymentGateway Crypt RSA php 这并尝试将一个对象制作为 rsa new Crypt RSA 这给了我错误的说法 Class
  • Magento 支付网关的“下订单”重定向

    这是我在 StackOverflow 上的第一篇实际帖子 我经常来这里 因为你们总是解决我的问题 我们在本地主机上的 Magento 上的结帐车中遇到问题 我们有 Magento 版本 1 5 并正在使用 direcpay 支付模块 通过使
  • WebView中的支付流程(Android)

    我有一个支付网关的网址 我需要在其中输入信用卡号等 我可以使用 WebView 打开此页面并直接在我的应用程序中付款吗 不打开像 Chrome 这样的单独的网络客户端 谷歌对于用户直接在 WebView 中输入信用卡 借记卡信息的应用程序发
  • paypal.HostedFields.isEligible() 始终返回 False :Paypal 借记卡/信用卡付款

    我想在我的网站上添加由 PayPal 提供支持的借记卡 信用卡付款 我正在按照指南进行操作 https developer paypal com docs business checkout advanced card payments h
  • 在 WooCommerce 中付款后立即更改订单状态[重复]

    这个问题在这里已经有答案了 我需要在收到付款后自动将订单状态更改为已完成 但前提是订单状态为 正在处理 我发现了这个片段 是什么让订单状态在每种情况下都完成 但是我的付款插件在成功付款更改后返回数据并更改 处理 的订单状态 我想在成功后将其
  • 如何从 Paypal 获取价值?

    我从上个月就面临这个问题 首先我能够从贝宝拿回价值 现在我无法从贝宝取回价值 我正在使用以下代码
  • 从支付网关重定向后丢失用户 cookie 和会话数据

    我正在将 ASP net MVC5 用于我的电子商务项目 我没有使用任何 SSL 我也成功集成了支付网关 我面临的问题是 当我将数据发布到支付网关时 它会处理付款并将响应发送回我们的 Web 应用程序操作方法 用户会被注销 即 User i
  • 如何将“捐赠”按钮集成到印度的网站中?

    我们正在为印度的慈善信托基金开发一个网站 为此 我们需要在网站上添加一个 捐赠 按钮 供任何想要通过支付网关向慈善机构捐赠的人使用 然而 Paypal 和 Google Wallet Google Checkout 都限制在印度使用 捐赠
  • magento 付款流程..一般如何运作

    有一个问题 我希望这是问的正确地方 不太明白magento 中的付款方式 客户去结账 假设想要以客人身份付款 因此提供地址等 最后找到付款方式 然后我希望客户通过信用卡付款 已经为我选择的网关 银行 安装了模块 那时 我希望用户被重定向到第
  • Firebase 支付网关?

    我目前正在评估 Firebase 是否适合我正在制作的应用程序 我发现的唯一潜在的症结是接受付款 目前有哪些选项 Firebase 是一个实时数据存储 专注于闪电般快速 可扩展的解决方案 用于同时在数百到数百万客户端之间共享数据 它内部不提
  • 寻找支付网关[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一家支付网关公司 这样我们就可以避免繁琐的 PCI DSS 认证及其相关费用 我现在就解决这个
  • 使用信用卡和支付网关进行年龄验证

    我正在开发一个游戏网站 用户必须年满 18 岁才能付款并开始游戏 我正在寻找一种解决方案来使用用户通过网站付款的信用卡来验证年龄 是否可以借助任何公认的支付网关来验证持卡人的年龄 是否可以通过任何方式验证持卡人的年龄 公认的支付网关 我 1
  • 如果在 Woocommerce 中应用了任何优惠券代码,请删除一些支付网关

    我开始从事小型 Woocommerce 项目 我有 3 个支付网关进入这家商店 Paypal 信用卡和直接银行转账 我想要的是 如果使用优惠券代码 我想从可用的支付网关中禁用 或删除 Paypal 和信用卡 并仅保留 直接银行转账 作为可用

随机推荐

  • Kendo UI 绑定弹出编辑器中的下拉值

    我有一个 Kendo 网格 它可以选择使用弹出编辑器添加新记录 弹出编辑器中的一个字段是 DropDownList 当我打开弹出编辑器时 我从下拉列表中预先选择了第一条记录 由于我预先选择了它 我希望它在网格内自动创建 绑定 当按 更新 时
  • Python 会缓存重复访问的文件吗?

    我想知道 Python 是否足够聪明 可以缓存重复访问的文件 例如当使用 pandas 读取相同的 CSV 或多次 unpickle 相同的文件时 这是否是 Python 的责任 还是应该由操作系统来处理 不 Python 只是一种语言 它
  • Snakemake - 如何使用文件的每一行作为输入?

    我需要使用文件的每一行tissuesused txt作为snakemake中并行规则的输入 我想总共大约有 48 个工作机会 for line in cat tissuesused txt do echo Sorting line phen
  • 如何与具有哈希属性的 Perl 对象交互?

    我有一个包含多个变量的类 其中一个是散列 runs sub new my class name my self name gt name runs gt times gt bless self class return self 现在 我要
  • 无法访问VueJS中的根数据

    这是我在 stackoverflow 上的第一篇文章 如果我做错了什么 请提前抱歉 我的问题 我已经设置了一个 VueJS 项目 并且正在尝试从另一个组件获取放入 App vue 中的数据 为此 我使用 this root count 为例
  • 带条件的 LINQ to SQL 急切加载

    我正在尝试学习 LINQ to SQL 并且发现了 LoadWith 函数 我找到的所有示例都会加载您在 LoadWith 函数中指定的表中的所有记录 例如 var dlo new DataLoadOptions dlo LoadWith
  • 在 IMAP 收件箱中搜索来自特定发件人的邮件并使用通配符?

    是否可以使用通配符在 IMAP 文件夹中搜索特定发件人 typ data M SEARCH None from security website IMAP RFC 3501 6 4 4 https www rfc editor org rf
  • 如何在 C# 6.0 中实现 INotifyPropertyChanged?

    答案是这个问题 https stackoverflow com questions 1315621 implementing inotifypropertychanged does a better way exist 1316417 13
  • 仅使用 javascript 将信息提交到 Google Drive 电子表格

    我基本上正在寻找一种仅使用 javascript 将信息提交到 Google Drive 电子表格的方法 更改特定单元格的值就是我所追求的 有人知道这是否可能吗 谢谢 这是在本地主机中工作的正确代码 就像在网站中一样 如果您有适当的客户端
  • Kafka Connector 的任务列表为空

    在卡夫卡启动后 有时我会出现这种行为 并非总是如此 似乎是随机的 org apache kafka connect runtime rest errors ConnectRestException Internal request miss
  • 在导航抽屉 Android 上添加 EditText

    我正在开发一个带有导航抽屉的新应用程序 使用 Android 模板 但我想用其他视图替换默认的列表视图 SOLVED 我必须编辑 java 代码来修改 createView 方法以与我的布局匹配 谢谢大家 问题 我的班级从ActionBar
  • 如何使用 Rustup 删除 Rust 编译器工具链?

    Rustup 文档展示了如何每晚安装 Rust https github com rust lang nursery rustup rs working with nightly rust 但不知道如何删除它 虽然文档确实显示了如何卸载ru
  • ArrayList 与通用集合

    在 NET 2 0 中使用 ArrayList 代替泛型集合有何优缺点 通用集合是类型安全的 你不能将string into a List
  • 核心数据 - 基本问题

    我想知道以下内容在 Objective C 中是如何工作的 在我的头文件中 我有以下内容 它是从不同的视图控制器初始化的 interface UserLookup UIViewController NSManagedObjectContex
  • 如何实现设备端CUDA虚拟功能?

    我发现 CUDA 不允许将具有虚拟函数的类传递到内核函数中 对于这个限制有什么解决方法吗 我真的很希望能够在内核函数中使用多态性 Thanks 罗伯特 克罗维拉评论中最重要的部分是 只需在设备上创建对象即可 所以记住这一点 我正在处理我有一
  • jQuery UI 和分割器

    使用 jQuery UI 我如何使用类似 Splitter 的功能http methvin com splitter 3csplitter html http methvin com splitter 3csplitter html 我问这
  • 如何同时运行不同版本的node.js?

    我已经为我的 cloud9 应用程序安装了节点 v0 8 25 并且我想在节点 v0 11 2 上进行开发 那么我可以在 v0 8 上运行 cloud9 并在 Ubuntu 上的 v0 11 2 上运行我的程序吗 我用的是nvm Thank
  • 带有 Google Apps 脚本的 jQuery UI

    是否可以将 jQuery UI 小部件与 google apps 脚本应用程序一起使用 我有一个文本框 我想在上面使用日期选择器 是的 您可以将 JQueryUI 与 Google Apps 脚本一起使用 我建议您查看示例代码 您无需执行任
  • TypeScript 中未检查“void”返回类型 – 防止浮动承诺?

    在 TypeScript 3 9 7 中运行 这与编译器无关 const someFn gt void gt 123 我发现这个答案 https stackoverflow com a 12763878 2072165 这说明这是设计使然
  • org.eclipse.debug.core.DebugException:com.sun.jdi.ClassNotLoadedException:检索数组的组件类型时发生类型未加载

    我正在开发AuthSample示例使用chase paymentech Java SDK命名为 PaymentechSDK jar version 7 4 0 当我尝试执行示例代码时 遇到以下错误 我不明白有什么问题 有人可以指导我吗 FY