java - OFX4J 工作正常后解析异常 - 聚合 SONRS

标签 java ofx

我有一段代码来读取 ofx 文件以检索多个标签(例如帐号、余额等),我正在使用 net.sf.ofx4j

一段代码:

public void parse(String filename) throws OFXParseException, IOException, SQLException {

        AggregateUnmarshaller unmarshaller = new AggregateUnmarshaller(
                ResponseEnvelope.class);
        FileInputStream 文件 = null;

        尝试 {
            文件=新的FileInputStream(文件名);
            ResponseEnvelope 信封 = unmarshaller.unmarshal(file);

            BankingResponseMessageSet messageSet = (BankingResponseMessageSet) 信封.getMessageSet(MessageSetType.banking);

            List 响应 = messageSet.getStatementResponses();
            for (BankStatementResponseTransaction 响应:响应) {

                BankStatementResponse 消息 = response.getMessage();
                字符串货币代码 = message.getCurrencyCode();
                String acct_number = message.getAccount().getAccountNumber();
                double av = message.getAvailableBalance().getAmount();
                double cur = message.getLedgerBalance().getAmount();
                AccountType acct_type = message.getAccount().getAccountType();

            }

        } catch (OFXParseException e) {
            System.out.println("错误:"+ e.getMessage());
        }
        返回空值;

    }

它工作得很好,直到有一天它开始抛出以下异常:

net.sf.ofx4j.io.AggregateStackContentHandler onElement 信息:索引 70 处的聚合 SONRS(类 net.sf.ofx4j.domain.data.signon.SignonResponse)不支持元素 INTU.BID。

net.sf.ofx4j.io.AggregateStackContentHandler onElement 信息:索引 70 处的聚合 SONRS(类 net.sf.ofx4j.domain.data.signon.SignonResponse)不支持元素 INTU.USERID。

线程“main”中的异常java.lang.IllegalStateException:java.io.IOException:意外的EOF

谢谢

最佳答案

希望 ofx 文件格式应该被改变。因为您正在请求(MessageSetType.*银行*)。但在您的 ofx 文件中可能有信用卡详细信息。

早期,交易数据包含在 <BANKMSGSRSV1> 标记内的 .ofx 文件中。 但现在交易数据包含在 <CREDITCARDMSGSRSV> 标签中。您需要更改数据接收代码。

希望您能从中得到一些帮助。谢谢

关于java - OFX4J 工作正常后解析异常 - 聚合 SONRS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10206583/

相关文章:

api - 如何以编程方式下载美国银行交易记录?

java - 如何将servlet的json输出发送到jsp?

java - 当我只有输入流时如何使用 HttpClient 发送文件

java - 使用 Spring 的 HandlerInterceptor 发送错误会导致 406( Not Acceptable )响应

java - 在国际象棋java中移动棋子

import - 如何使用.NET读取Microsoft Money数据文件?

ios - 在 iOS 中解析 OFX 或 SGML

java - 从 List<Map<String,String>> 中提取值(不是键),并将其展平为 List<String>

banking - 如何从网站上提取银行对账单?

c# - xsd.exe 在 OFX2 架构上运行时生成重复属性