I'm trying to migrate our JBoss.NET based services to new JBossWS but I'm having trouble getting rpc/encoded styles working. I need this for my Perl (SOAP::Lite) based clients. Is rpc/encoded style still supported in JBossWS?
My Java code looks like:
package com.lunatech.test.jbossws;
import javax.ejb.Stateless;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import org.jboss.ws.annotation.PortComponent;
import com.lunatech.test.jbossws.dvo.GetInfoRequest;
import com.lunatech.test.jbossws.dvo.GetInfoResponse;
@WebService(
targetNamespace = "http://test.lunatech.com/MutationService/",
serviceName = "MutationService"
)
@PortComponent(contextRoot="/MutationService", urlPattern="/*")
@SOAPBinding(
style = SOAPBinding.Style.RPC,
use = SOAPBinding.Use.ENCODED
)
@Stateless
public class MutationService implements MutationServiceRemote {
@WebMethod(action = "getInfo")
@WebResult(name = "response")
public GetInfoResponse getInfo(@WebParam(name = "request") GetInfoRequest request) {
return new GetInfoResponse();
}
}
... <binding name='MutationServiceBinding' type='tns:MutationService'> <soap:binding style='rpc' transport='http://schemas.xmlsoap.org/soap/http'/> <operation name='getInfo'> <soap:operation soapAction=''/> <input> <soap:body namespace='http://test.lunatech.com/MutationService/' use='literal'/> </input> <output> <soap:body namespace='http://test.lunatech.com/MutationService/' use='literal'/> </output> </operation> </binding> ...