Я создал свой веб-сервис, используя оси Eclipse и Apache ( Используя эту ссылку ).Когда я тестировал его на своем локальном компьютере с Eclipse и Apchache tomcat, он работал нормально.
Затем я развернул свой веб-сервис на другом компьютере, используя файлы, сгенерированные Eclipse.Я скопировал папку, созданную в WebContent\WEB-INF\services\AutocompleteService
, в server\default\deploy\i2b2.war\WEB-INF\services\AutocompleteService
Jboss. Когда я пытался получить доступ к своему сервису, это дает мне следующее исключение.
SEVERE: org.apache.axis2.AxisFault: Required element null defined in the schema can not be found in the request".
Вот мой маленький веб-сервис (исключая логику бизнеса)
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