无法将mule app作为战争部署到Websphere上

时间:2015-09-09 13:14:06

标签: websphere mule websphere-liberty

由于环境限制,我们需要在Websphere上部署我们的Mule应用程序。我正在做一个PoC来让一个Mule应用程序在Liberty配置文件服务器上运行。然而,我无法让Mule应用程序(部署为战争)运行。我在https://stackoverflow.com/a/14859119/387927尝试了这个例子。战争被部署,但是当我尝试调用应用程序时,Mule会抛出一个错误,声明" Server null"。我错过了什么吗?堆栈跟踪如下所示。

ERROR org.mule.transport.servlet.MuleReceiverServlet - message: Null input provided: Server null
java.lang.IllegalArgumentException: Null input provided: Server null
    at com.ibm.ws.genericbnf.internal.BNFHeadersImpl.appendHeader(BNFHeadersImpl.java:397) ~[?:?]
    at com.ibm.ws.http.dispatcher.internal.channel.HttpResponseImpl.addHeader(HttpResponseImpl.java:148) ~[?:?]
    at com.ibm.ws.webcontainer.osgi.response.IResponseImpl.addHeader(IResponseImpl.java:81) ~[?:?]
    at com.ibm.ws.webcontainer.srt.SRTServletResponse.addField(SRTServletResponse.java:350) ~[?:?]
    at com.ibm.ws.webcontainer.srt.SRTServletResponse.addHeader(SRTServletResponse.java:2072) ~[?:?]
    at org.mule.transport.servlet.ServletResponseWriter.setHttpHeadersOnServletResponse(ServletResponseWriter.java:174) ~[?:3.6.2]
    at org.mule.transport.servlet.ServletResponseWriter.writeResponseFromMessage(ServletResponseWriter.java:124) ~[?:3.6.2]
    at org.mule.transport.servlet.ServletResponseWriter.writeResponse(ServletResponseWriter.java:48) ~[?:3.6.2]
    at org.mule.transport.servlet.AbstractReceiverServlet.writeResponse(AbstractReceiverServlet.java:151) [?:3.6.2]
    at org.mule.transport.servlet.MuleReceiverServlet.processHttpRequest(MuleReceiverServlet.java:256) [?:3.6.2]
    at org.mule.transport.servlet.MuleReceiverServlet.doAllMethods(MuleReceiverServlet.java:239) [?:3.6.2]
    at org.mule.transport.servlet.MuleReceiverServlet.doGet(MuleReceiverServlet.java:187) [?:3.6.2]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:575) [com.ibm.ws.javaee.servlet.3.0_1.0.1.jar:?]
    at org.mule.transport.servlet.MuleReceiverServlet.service(MuleReceiverServlet.java:176) [?:3.6.2]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:668) [com.ibm.ws.javaee.servlet.3.0_1.0.1.jar:?]
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1240) [com.ibm.ws.webcontainer_1.0.3.jar:?]
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:760) [com.ibm.ws.webcontainer_1.0.3.jar:?]
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:443) [com.ibm.ws.webcontainer_1.0.3.jar:?]
    at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1033) [com.ibm.ws.webcontainer_1.0.3.jar:?]
    at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:4499) [com.ibm.ws.webcontainer_1.0.3.jar:?]
    at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost$2.handleRequest(DynamicVirtualHost.java:282) [com.ibm.ws.webcontainer_1.0.3.jar:?]
    at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:954) [com.ibm.ws.webcontainer_1.0.3.jar:?]
    at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost$2.run(DynamicVirtualHost.java:252) [com.ibm.ws.webcontainer_1.0.3.jar:?]
    at com.ibm.ws.http.dispatcher.internal.channel.HttpDispatcherLink$TaskWrapper.run(HttpDispatcherLink.java:584) [com.ibm.ws.transport.http_1.0.2.jar:?]
    at com.ibm.ws.threading.internal.Worker.executeWork(Worker.java:439) [com.ibm.ws.threading_1.0.3.jar:?]
    at com.ibm.ws.threading.internal.Worker.run(Worker.java:421) [com.ibm.ws.threading_1.0.3.jar:?]
    at java.lang.Thread.run(Thread.java:745) [?:1.7.0_79]

感谢您的帮助!

通过添加消息属性转换器解决了该问题,如下所示

 <message-properties-transformer doc:name="Set the Server property to a dummy value">
        <add-message-property key="Server" value="dummyValue"/>
    </message-properties-transformer>

0 个答案:

没有答案