小编Jam*_*Fox的帖子

Apache XmlBeans NullPointerException

我试图解析pacs.003 ISO20022格式的xml文件.我有这个XSD,并使用XMLBeans创建了所需的Java类.我遇到的问题是我无法从XML中读取元素并继续获取NullPointerException.我搜索过类似的问题,但大多数都导致OP转向不同的技术.

我从LON_20160208.xml获得的XML片段是:

  <S2SDDDnf:FIToFICstmrDrctDbt xmlns="urn:iso:std:iso:20022:tech:xsd:pacs.003.001.02">
    <GrpHdr>
      <MsgId>DDA160802AASW006543</MsgId>
    </GrpHdr>
  </S2SDDDnf:FIToFICstmrDrctDbt>
Run Code Online (Sandbox Code Playgroud)

我的代码是:

  public static void main(String[] args) {
    XmlOptions xmlOptions = new XmlOptions();
    xmlOptions.setUseDefaultNamespace();
    xmlOptions.setSavePrettyPrint();

    Document doc;

    try {
        doc = Document.Factory.parse(new File("data_samples/LON_20160208.xml"));
        String messageId = doc.getFIToFICstmrDrctDbt().getGrpHdr().getMsgId();

    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (XmlException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}
Run Code Online (Sandbox Code Playgroud)

doc.getFIToFICstmrDrctDbt()在上述结果NullPointerException异常,这似乎指向无论是get_store()在XMLBeans类中的方法或与命名空间的问题.

我已经尝试使用替换命名空间映射并打开setUseDefaultNamespace()和关闭该方法(它目前没有在上面注释掉).我也看过有关添加一个答案elementFormDefault="qualified"xsd:schema元素,但这个已经完成.这些似乎都没有解决问题,我的想法已经不多了.

任何帮助将不胜感激.

java xml xsd xmlbeans xml-namespaces

9
推荐指数
1
解决办法
311
查看次数

如何使用jsoup获取所有div元素?

我正在学习如何使用jsoup。我首先以为jsoup就像jquery,但事实并非如此。

我想将这个HTML正文提取到div元素中。

<html>
<head></head>
    <body>
            <div>
                <h1>Title</h1>
            </div>
            <div>
                <img src="/xx.jpg" />
            </div>
            <div>
                <p>Paragraph 1</p>
                <p>Paragraph 2</p>
            </div>
            <div>
                <h2><b>End</b></h2>
            </div>
        </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我正在使用此代码:

Document doc = Jsoup.parse(htmlString);
Elements divs = doc.select("div");
Run Code Online (Sandbox Code Playgroud)

但它会返回所有div。我希望元素返回如下:

divs.get(0).toString(); // "<h1>Title</h1>"
divs.get(1).toString(); // "<img src="/xx.jpg" />"
divs.get(2).toString(); // "<p>Paragraph 1</p><p>Paragraph 2</p>"
divs.get(3).toString(); // "<h2><b>End</b></h2>"
Run Code Online (Sandbox Code Playgroud)

请协助我使用jsoup将div转换为元素并如上所述返回吗?

html java jsoup

5
推荐指数
2
解决办法
3680
查看次数

找到重复项时在 Camel 中重命名文件

当发现重复文件时,我试图在 Camel 中重命名文件。我有一个包含 x 个文件的目录,如果将另一个文件放入该文件夹中,我希望将原始文件重命名而不是覆盖。

我尝试使用fileExiststempFileName选项,但它没有解决问题。

.to("file://"+decryptedFailed+"?delay=3000&tempFileName=tempName&fileExist=TryRename")
Run Code Online (Sandbox Code Playgroud)

我这样做有什么问题吗?

java apache-camel

2
推荐指数
1
解决办法
1361
查看次数

Active MQ无法在Apache Camel下运行

尝试连接到Active MQ上的队列时,我收到以下错误消息.

Failed to create route ...because of Failed to resolve endpoint: amq://queue:ROBOMQ.TO.MPM due to: Password must also be provided when using username/password as credentials.
Run Code Online (Sandbox Code Playgroud)

下面的Camel XML中的AMQ bean声明.已经工作了好几个月但现在已经停止了.

<bean id="amq" class="org.apache.activemq.camel.component.ActiveMQComponent">
    <property name="brokerURL" value="tcp://127.0.0.1:61616" />
    <property name="userName" value="${username}" />
    <property name="password" value="${password}" />
</bean>
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

java activemq-classic apache-camel

0
推荐指数
1
解决办法
362
查看次数