0
我使用Eclipse和Apache軸創建了我的Web服務(Using this link)。當我使用Eclipse和Apchache tomcat在本地機器上測試它時,它工作正常。
然後,我使用eclipse生成的文件將我的web服務部署到另一臺機器上。我將在WebContent\WEB-INF\services\AutocompleteService
下創建的文件夾複製到Jboss的server\default\deploy\i2b2.war\WEB-INF\services\AutocompleteService
當我試圖訪問我的服務時,它給了我下面的例外。帶Apache軸的Web服務
SEVERE: org.apache.axis2.AxisFault: Required element null defined in the schema can not be found in the request".
這是我小的Web服務(不含BIZ邏輯)
public class AutocompleteService
{
public OMElement getCodes(OMElement input)
{
String query = input.getText();
OMFactory fac = OMAbstractFactory.getOMFactory();
OMNamespace omNs = fac.createOMNamespace("", "");
OMElement codes = fac.createOMElement("codes", omNs);
// some biz logic
while (SOME_CONDITION)
{
OMElement code = fac.createOMElement("code", null, codes);
OMAttribute value = fac.createOMAttribute("value", null, tempStr);
code.addAttribute(value);
}
return codes;
}
}
這裏是我的services.xml文件
service name="AutocompleteService" >
<Description>
Please Type your service description here
</Description>
<messageReceivers>
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only" class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</messageReceivers>
<parameter name="ServiceClass" locked="false">com.service.AutocompleteService</parameter>
</service>
我缺少的東西?
編輯:我使用
1)的Jboss 4.2.2
2)Axisa 2-1.5.2
3)的Tomcat 6
能否請你加上這裏被用來爲Tomcat,JBoss和Axis2的版本信息? – Steen
@Steen:請檢查我的編輯。 – xyz