org.springframework.ws.server.endpoint.MethodEndpoint.invoke() 方法抛出 IllegalArgumentException:参数类型不匹配

org.springframework.ws.server.endpoint.MethodEndpoint.invoke() method throws IllegalArgumentException : argument type mismatch

我正在尝试将现有的 spring Web 服务迁移到 jdk 1.8,Webphere 9 从当前版本 jdk 是 1.6 和 websphere 6。我的 Web 服务按预期工作 jdk 1.6 和 websphere 6.

org.springframework.ws.server.endpoint.MethodEndpoint.invoke() 调用了正确的方法,但该方法是使用参数 org.apache.xmlbeans.impl.values.XmlComplexContentImpl 而不是扩展 XmlComplexContentImpl class 的 XXXRequestDocumentImpl 调用的。

控制台错误:

[err] java.lang.IllegalArgumentException: argument type mismatch
[err]   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[err]   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
[err]   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
[err]   at java.lang.reflect.Method.invoke(Method.java:508)
[err]   at org.springframework.ws.server.endpoint.MethodEndpoint.invoke(MethodEndpoint.java:115)

肥皂错误 UI

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body>
      <SOAP-ENV:Fault>
         <faultcode>SOAP-ENV:Client</faultcode>
         <faultstring xml:lang="en">Invalid request</faultstring>
      </SOAP-ENV:Fault>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

使用 Jdk 1.8 和 xmlbeans 2.6.0 我遇到了上述错误 根本原因是 xmlbeans-maven-plugin 中缺少 xmlConfig 标记。因为 xmlbeans-maven-plugin 没有在 \target\generated-classes\xmlbeans\schemaorg_apache_xmlbeans.

下生成文件夹 schemaorg_apache_xmlbeans
          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>xmlbeans-maven-plugin</artifactId>
            <version>2.3.2</version>
            <executions>
                <execution>
                    <goals>
                        <goal>xmlbeans</goal>
                    </goals>
                </execution>
            </executions>
            <!--<inherited>true</inherited>-->
            <configuration>
                <schemaDirectory>${basedir}/src/main/resources/xsd</schemaDirectory>
                <javaSource>1.8</javaSource>
                <xmlConfigs>
                    <xmlConfig implementation="java.io.File">${basedir}/src/main/resources/xsdconfig/xxxxx.xsdconfig</xmlConfig>
                </xmlConfigs>
            </configuration>
        </plugin>