【问题标题】:Spring-WS: NullPointerException when trying to setNameSpaceAware with WebServicesParserFactorySpring-WS:尝试使用 WebServicesParserFactory 设置NameSpaceAware 时出现 NullPointerException
【发布时间】:2011-12-07 09:25:35
【问题描述】:

这是一个长镜头,但我正在尝试使用 Spring-WS 编写一个 Web 服务客户端。我收到了一个NullPointerException,代码如下:

public class WebServiceProcess {
    private WebServiceTemplate webServiceTemplate = new WebServiceTemplate();
    private CommonsHttpMessageSender messageSender = new CommonsHttpMessageSender();
    private SaajSoapMessageFactory messageFactory = new SaajSoapMessageFactory();
    private Jaxb2Marshaller marshaller = new Jaxb2Marshaller();

    private void init() {
        Resource schema = new ClassPathResource("/WEB-INF/mySchema.xsd");
        marshaller.setSchema(schema);
        marshaller.setContextPaths("list of packages with JAXB classes...");
        webServiceTemplate.setMarshaller(marshaller);
        webServiceTemplate.setUnmarshaller(marshaller);
        webServiceTemplate.setMessageSender(messageSender);
    }

    public TestResponse sendRequest(TestRequest request) {
        init();
        return response = (TestResponse) webServiceTemplate.marshalSendAndReceive("myEndpointURI", request);
    }
}

堆栈跟踪:

Exception in thread "main" java.lang.NullPointerException
    at com.ibm.ws.webservices.engine.utils.WebServicesParserFactory.setNamespaceAware(WebServicesParserFactory.java:160)
    at com.ibm.ws.webservices.engine.utils.XMLUtils.initSAXFactory(XMLUtils.java:437)
    at com.ibm.ws.webservices.engine.utils.XMLUtils.getSAXParser(XMLUtils.java:490)
    at com.ibm.ws.webservices.engine.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:293)
    at com.ibm.ws.webservices.engine.SOAPPart._getSOAPEnvelope(SOAPPart.java:1064)
    at com.ibm.ws.webservices.engine.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:628)
    at com.ibm.ws.webservices.engine.SOAPPart.getEnvelope(SOAPPart.java:656)
    at org.springframework.ws.soap.saaj.support.SaajUtils.getSaajVersion(SaajUtils.java:155)
    at org.springframework.ws.soap.saaj.SaajSoapMessage.getSaajVersion(SaajSoapMessage.java:257)
    at org.springframework.ws.soap.saaj.SaajSoapMessage.getImplementation(SaajSoapMessage.java:342)
    at org.springframework.ws.soap.saaj.SaajSoapMessage.<init>(SaajSoapMessage.java:117)
    at org.springframework.ws.soap.saaj.SaajSoapMessageFactory.createWebServiceMessage(SaajSoapMessageFactory.java:184)
    at org.springframework.ws.soap.saaj.SaajSoapMessageFactory.createWebServiceMessage(SaajSoapMessageFactory.java:58)
    at org.springframework.ws.transport.AbstractWebServiceConnection.receive(AbstractWebServiceConnection.java:90)
    at org.springframework.ws.client.core.WebServiceTemplate.doSendAndReceive(WebServiceTemplate.java:548)
    at org.springframework.ws.client.core.WebServiceTemplate.sendAndReceive(WebServiceTemplate.java:496)
    at org.springframework.ws.client.core.WebServiceTemplate.marshalSendAndReceive(WebServiceTemplate.java:343)
    at org.springframework.ws.client.core.WebServiceTemplate.marshalSendAndReceive(WebServiceTemplate.java:333)
    at com.lmig.processing.WebServiceProcess.sendRequest(WebServiceProcess.java:66)
    at com.lmig.processing.TestProcess.main(MainProcess.java:57)

任何帮助将不胜感激....我知道我没有太多工作要做。谢谢。

【问题讨论】:

    标签: java web-services nullpointerexception spring-ws webservicetemplate


    【解决方案1】:

    解决了。我的类路径中有错误的 WebSphere jar。我有 com.ibm.ws.admin.client_7.0.0.jar 而不是 com.ibm.ws.webservices.thinclient_7.0.0.jar。

    【讨论】:

      猜你喜欢
      • 2010-12-11
      • 2018-01-21
      • 2019-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多