Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 尽管我的应用程序的两个版本相同,为什么在soap响应中得到不同的编码_Java_Xml_Maven_Web Services_Soap - Fatal编程技术网

Java 尽管我的应用程序的两个版本相同,为什么在soap响应中得到不同的编码

Java 尽管我的应用程序的两个版本相同,为什么在soap响应中得到不同的编码,java,xml,maven,web-services,soap,Java,Xml,Maven,Web Services,Soap,新版本 <?xml version="1.0" ?> <soap:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns

新版本

<?xml version="1.0" ?>
<soap:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <env:Header></env:Header>
    <soap:Body xmlns:ns0="http://myurl...">
        <ns1:mySoapResponse xmlns:ns1="http://myurl...">
            <ns1:out>&lt;Foo&gt;
  &lt;field1&gt;bar&lt;/field1&gt;
  &lt;field2&gt;gaz&lt;/field1&gt;

福
field1bar/field1
field2gaz/field1
旧版本

<?xml version='1.0' encoding='UTF-8'?>
<soap:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <env:Header/>
    <soap:Body xmlns:ns0="http://myurl...">
        <ns1:mySoapResponse xmlns:ns1="http://myurl...">
            <ns1:out>&lt;Foo>&#xd;
  &lt;field1>bar&lt;/field1>&#xd;
  &lt;field2>gaz&lt;/field2>&#xd;

Foo>和#xd;
字段1>栏/字段1>和#xd;
气田2>天然气/气田2>和#xd;
我希望得到相同的响应(使用
#xd;

  • UTF-8来自哪里?我没有改变任何东西,所以我不知道为什么我在新版本中遗漏了它
关于业务逻辑,我对我的代码做了一些更改,现在,我有了不同的响应(查看
以及缺少
) 我比较了新旧ear文件

META-INF/Manifest.mf:

  • Old是用jdk:1.8.0_242和maven 3.6.2创建的
  • 新版本是用jdk创建的:1.8.0_261,maven 3.6.3
WEB-INF/lib

  • 所有的罐子都一样。没有区别
WEB-INF/

  • applicationContext.xml
  • dataSource.xml
  • remoting-servlet.xml
  • web.xml
  • weblogic.xml
它们都是一样的,没有区别

为什么我会得到不同的输出?我对它进行了调试,响应字符串是相同的,但是,很可能是由于某种序列化,输出被放在soap响应标记中,它得到了不同的
%gt编码。我可以看到
com.sun.xml.ws.db databindingingmpl
正在调试器堆栈中使用
serializeResponse
方法,但我无法转到该类对其进行调试。。。 我如何找到这种变化的根本原因?我没有更改/触摸我的wsdl模式,因此它也没有任何问题

任何帮助都将不胜感激