Soap 使用glassfish n wso2esb找不到操作的端点引用(EPR)
我是wso2 esb的新手。 我正在尝试一个简单的web服务程序Soap 使用glassfish n wso2esb找不到操作的端点引用(EPR),soap,wsdl,wso2,wso2esb,esb,Soap,Wsdl,Wso2,Wso2esb,Esb,我是wso2 esb的新手。 我正在尝试一个简单的web服务程序 package testmart; import javax.jws.WebService; @WebService public class testone { public String testMethod() { return "success"; } } 我正在使用glassfish服务器,通过提供以下详细信息在wso2 esb上创建了一个代理: web服务url:http
package testmart;
import javax.jws.WebService;
@WebService
public class testone {
public String testMethod()
{
return "success";
}
}
我正在使用glassfish服务器,通过提供以下详细信息在wso2 esb上创建了一个代理:
web服务url:http://localhost:8080/testmart/testoneService
wsdl url:http://localhost:8080/testmart/testoneService?wsdl
创建后显示“成功”消息。但当我测试它时,出现了以下错误:
<soapenv:Fault xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope" xmlns:axis2ns7="http://www.w3.org/2003/05/soap-envelope">
<soapenv:Code>
<soapenv:Value>axis2ns7:Client</soapenv:Value>
</soapenv:Code>
<soapenv:Reason>
<soapenv:Text xml:lang="en-US" xmlns:xml="http://www.w3.org/XML/1998/namespace">
The endpoint reference (EPR) for the Operation not found is /services/testmart1.testmart1HttpSoap12Endpoint and the WSA Action = null. If this EPR was previously reachable, please contact the server administrator.
</soapenv:Text>
</soapenv:Reason>
<soapenv:Detail/>
</soapenv:Fault>
axis2ns7:客户端
找不到操作的端点引用(EPR)为/services/testmart1.testmart1HttpSoap12Endpoint,且WSA Action=null。如果以前可以访问此EPR,请与服务器管理员联系。
下面是我的esb源代码视图:
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://ws.apache.org/ns/synapse">
<registry provider="org.wso2.carbon.mediation.registry.WSO2Registry">
<parameter name="cachableDuration">15000</parameter>
</registry>
<proxy name="testmart1"
transports="https http local"
startOnLoad="true"
trace="disable">
<description/>
<target>
<endpoint>
<address uri="http://localhost:8080/testmart/testoneService"/>
</endpoint>
<outSequence>
<send/>
</outSequence>
</target>
<publishWSDL uri="http://localhost:8080/testmart/testoneService?wsdl"/>
</proxy>
<sequence name="fault">
<log level="full">
<property name="MESSAGE" value="Executing default 'fault' sequence"/>
<property name="ERROR_CODE" expression="get-property('ERROR_CODE')"/>
<property name="ERROR_MESSAGE" expression="get-property('ERROR_MESSAGE')"/>
</log>
<drop/>
</sequence>
<sequence name="main">
<in>
<log level="full"/>
<filter source="get-property('To')" regex="http://localhost:9000.*">
<send/>
</filter>
</in>
<out>
<send/>
</out>
<description>The main sequence for the message mediation</description>
</sequence>
</definitions>
15000
消息中介的主序列
我读了所有关于这个错误的帖子,但无法解决这个问题。
任何形式的帮助都将被高度赞赏,因为这是我第一次尝试并坚持了几个小时的例子。
提前感谢。发送请求时,请检查是否设置了SOAPAction。如果不是,可以通过两种方式指定:
<property name="SOAPAction" value="urn:SOAPAction" scope="transport"/>
您正在使用Wso2ESB,因此必须指定如下内容: @WebMethod(action=“testMethod”,operationName=“testMethod”) 公共字符串testMethod()
上述注释必须在Web服务实现类中使用。在Websphere Application Server上,在相同的情况下,它有助于在服务器停止时删除临时文件夹。在WSO2 ESB的Web界面中,单击代理的“源代码视图”,并放置以下行:
...
<parameter name="serviceType">proxy</parameter>
<parameter name="disableOperationValidation">true</parameter>
...
。。。
代理
真的
...
标签前:
...
<parameter name="serviceType">proxy</parameter>
<parameter name="disableOperationValidation">true</parameter>
...