zyg*_*tus 1 wso2 wso2esb wso2-data-services-server
我正在创建WSO2ESB代理服务,该服务从WSO2DSS服务器获取数据并对其进行迭代,然后将获取请求发送到WSO2DSS。
<iterate id="it"
expression="//*[local-name()='data']"
sequential="true">
<target>
<sequence>
<call>
<endpoint>
<http method="GET"
uri-template="http://localhost:9766/services/TEST/test?testId={uri.var.testId}"/>
</endpoint>
</call>
<send/>
</sequence>
</target>
</iterate>
Run Code Online (Sandbox Code Playgroud)
但是DSS给出了此错误:
[] [2016-11-28 13:13:03,808]错误{org.wso2.carbon.dataservices.core.DBInOutMessageReceiver}-输入/输出消息接收器{org.wso2.carbon.dataservices.core.DBInOutMessageReceiver}错误代码:INCOMPATIBLE_PARAMETERS_ERROR嵌套的异常:-javax.xml.stream.XMLStreamException:DS错误消息:“ CallQuery.extractParams”中的错误,找不到类型为:query-param name:testId DS的参数代码:INCOMPATIBLE_PARAMETERS_ERROR源数据服务:-名称: DAKPR位置:/DAKPR.dbs说明:N / A缺省名称空间:http ://dss.example.com/TEST 当前请求名称:test当前参数:{}
在org.wso2上的org.wso2.carbon.dataservices.core.dispatch.DataServiceRequest.dispatch(DataServiceRequest.java:354)在org.wso2.carbon.dataservices.core.dispatch.SingleDataServiceRequest.processRequest(SingleDataServiceRequest.java:75) org.wso2.carbon.dataservices.core.DBInOutMessageReceiver.invokeBusinessLogic(DBInOutMessageReceiver.java:57)的.carbon.dataservices.core.DataServiceProcessor.dispatch(DataServiceProcessor.java:41)位于org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic (AbstractInOutSyncMessageReceiver.java:42)在org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:110)在org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)在org.apache。机构中的axis2.transport.http.util.RESTUtil.invokeAxisEngine(RESTUtil.java:144)。org.apache.axis2.transport.http.AxisServlet $ RestRequestProcessor.processURLRequest(AxisServlet.java:843)处的apache.axis2.transport.http.util.RESTUtil.processURLRequest(RESTUtil.java:139)在org.wso2.carbon处。 org.wso2.carbon.core.transports.CarbonServlet.doGet(CarbonServlet.java:152)处的core.transports.CarbonServlet.handleRestRequest(CarbonServlet.java:303)在javax.servlet.http.HttpServlet.service(HttpServlet.java: 624),位于org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61),位于org.eclipse.equinox.http,位于javax.servlet.http.HttpServlet.service(HttpServlet.java:731) org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:68)上的.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:128)在javax.servlet.http.HttpServlet上。org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)处的服务(HttpServlet.java:731)org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)在org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)在org.apache.catalina.core.ApplicationFilterChain org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)的org.owasp.csrfguard.CsrfGuardFilter.doFilter(CsrfGuardFilter.java:72)的.internalDoFilter(ApplicationFilterChain.java:241)位于org.apache.catalina.core的catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)。org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:61)的ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208): 241)在org.apache.catalina.doFilter(ApplicationFilterChain.java:208)在org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(HttpHeaderSecurityFilter.java:120)在org.apache.catalina.core.ApplicationFilterChain org.org.apache.catalina.core的.internalDoFilter(ApplicationFilterChain.java:241)org.org的org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:218)的ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)。 apache.catalina.core.StandardContextValve.invoke(StandardContextValve。java:122)位于org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)位于org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)位于org.apache.catalina.valves org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99)上的.ErrorReportValve.invoke(ErrorReportValve.java:103),org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve $ 1。在org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java :)在org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:57)处调用(CarbonTomcatValve.java:47) 47)位于org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62)位于org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve。在org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57)上在org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)处调用(CarbonStuckThreadDetectionValve.java:159)在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:442)的org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)在org.apache.coyote.http11.AbstractHttp11Processor.process (AbstractHttp11Processor.java:1082)在org.apache.coyote.AbstractProtocol $ AbstractConnectionHandler.process(AbstractProtocol.java:623)在org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun(NioEndpoint.java:1756)在org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.run(NioEndpoint.java:1715),位于java.util.concurrent.ThreadPoolExecutor。org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run(Task.java:61)上的java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)上的runWorker(ThreadPoolExecutor.java:1142)在java.lang.Thread.run(Thread.java:745)
端点http:// localhost:9766 / services / TEST / test?testId = 1正常运行,但是当与WSO2ESB在迭代介体中一起使用时,它将无法正常运行。为什么?
在调用调解器之前使用此标头解决了该问题:
<header name="Content-Type" scope="transport" action="remove"/>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
602 次 |
| 最近记录: |