Sajit - SDTPL wrote:
> Hi,
>
> We are evaluating using JAX-WS for development of a new solution
> which is based on components deployed in the form of Web Services.
>
> We are using NetBeans 5.5 for the development environment and Sun
> App Server 9 (Glassfish) is the app server being used.
>
> We tried developing a simple Web Service, which is based on some
> of the examples available along with JAX-WS. However, we are using
> NetBeans to create the same.
>
> ***********************************************************************************************************
> package TestWS;
>
> import java.rmi.RemoteException;
> import java.util.Map;
> import javax.jws.WebMethod;
> import javax.jws.WebService;
> import javax.xml.soap.SOAPMessage;
> import javax.xml.ws.Provider;
> import javax.xml.ws.Service;
> import javax.xml.ws.ServiceMode;
> import javax.xml.ws.WebServiceProvider;
>
> /**
> *
> * @author Sajit_3
> */
>
> @WebService
> @ServiceMode(value=Service.Mode.MESSAGE)
> public class TestWS implements Provider<SOAPMessage>
> {
> /**
> * Web service operation
> */
> @WebMethod
> public SOAPMessage ReturnString (SOAPMessage inRequest)
> {
> // TODO implement operation
> return inRequest;
> }
>
> public SOAPMessage invoke (SOAPMessage inRequest)
> {
> return inRequest;
> }
>
> public SOAPMessage invoke(SOAPMessage inRequest,
> Map<String,Object> context)
> throws RemoteException {
> return inRequest;
> }
> }
>
This is a wrong Provider.invoke() method has only one argument
public SOAPMessage invoke(SOAPMessage inRequest, Map<String,Object> context)
Try the following:
@WebServiceProvider
@ServiceMode(value=Service.Mode.MESSAGE)
public class TestWS implements Provider<SOAPMessage>
{
public SOAPMessage invoke (SOAPMessage inRequest)
{
return inRequest;
}
}
Jitu
> ***********************************************************************************************************
>
> The above test Web Service compiles successfully and is also
> deployed successfully.
>
> However, when we change the annotation from @WebService to
> @WebServiceProvider the deployment fails (though NetBeans does not
> show any compile time errors).
> Further note that we are not deploying directly through the IDE.
> We use the AppServer interface to locate the war file created
> (through NetBeans) and deploy the same.
>
>
> The AppServer errorlog shows the following messages.
>
> =================================================================
> [#|2006-12-02T11:38:28.312+0530|WARNING|sun-appserver-pe9.0|org.apache.coyote.tomcat5.CoyoteRequest|_ThreadID=20;_ThreadName=httpWorkerThread-4848-0;_RequestID=d2cd8e5b-f400-4480-b608-ebf1aeb6e7cc;|Unable
> to set character encoding UTF-8 because request parameters have
> already been read, or ServletRequest.getReader() has been called|#]
>
> [#|2006-12-02T11:38:31.218+0530|WARNING|sun-appserver-pe9.0|javax.enterprise.system.tools.deployment|_ThreadID=23;_ThreadName=Thread-36;_RequestID=7093522d-e469-456e-920f-f52a9c96aa0f;|DPL5035:Error
> while running ejbc
> com.sun.enterprise.deployment.backend.IASDeploymentException:
> Fatal Error from EJB Compiler -- null
> at
> com.sun.enterprise.deployment.backend.WebServiceDeployer.doWebServiceDeployment(WebServiceDeployer.java:140)
> at com.sun.ejb.codegen.IASEJBC.doCompile(IASEJBC.java:855)
> at com.sun.ejb.codegen.IASEJBC.ejbc(IASEJBC.java:580)
> at
> com.sun.enterprise.deployment.backend.EJBCompiler.preDeployModule(EJBCompiler.java:413)
> at
> com.sun.enterprise.deployment.backend.EJBCompiler.compile(EJBCompiler.java:226)
> at
> com.sun.enterprise.deployment.backend.ModuleDeployer.runEJBC(ModuleDeployer.java:1189)
> at
> com.sun.enterprise.deployment.backend.WebModuleDeployer.deploy(WebModuleDeployer.java:179)
> at
> com.sun.enterprise.deployment.backend.ModuleDeployer.doRequestFinish(ModuleDeployer.java:160)
> at
> com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:169)
> at
> com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:95)
> at
> com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:871)
> at
> com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:266)
> at
> com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:739)
> at
> com.sun.enterprise.management.deploy.DeployThread.deploy(DeployThread.java:174)
> at
> com.sun.enterprise.management.deploy.DeployThread.run(DeployThread.java:210)
> |#]
>
> [#|2006-12-02T11:38:31.468+0530|SEVERE|sun-appserver-pe9.0|javax.enterprise.system.tools.deployment|_ThreadID=23;_ThreadName=Thread-36;_RequestID=7093522d-e469-456e-920f-f52a9c96aa0f;|Exception
> occured in J2EEC Phase
> com.sun.enterprise.deployment.backend.IASDeploymentException:
> Error while running ejbc -- Fatal Error from EJB Compiler -- null
> at
> com.sun.enterprise.deployment.backend.WebServiceDeployer.doWebServiceDeployment(WebServiceDeployer.java:140)
> at com.sun.ejb.codegen.IASEJBC.doCompile(IASEJBC.java:855)
> at com.sun.ejb.codegen.IASEJBC.ejbc(IASEJBC.java:580)
> at
> com.sun.enterprise.deployment.backend.EJBCompiler.preDeployModule(EJBCompiler.java:413)
> at
> com.sun.enterprise.deployment.backend.EJBCompiler.compile(EJBCompiler.java:226)
> at
> com.sun.enterprise.deployment.backend.ModuleDeployer.runEJBC(ModuleDeployer.java:1189)
> at
> com.sun.enterprise.deployment.backend.WebModuleDeployer.deploy(WebModuleDeployer.java:179)
> at
> com.sun.enterprise.deployment.backend.ModuleDeployer.doRequestFinish(ModuleDeployer.java:160)
> at
> com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:169)
> at
> com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:95)
> at
> com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:871)
> at
> com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:266)
> at
> com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:739)
> at
> com.sun.enterprise.management.deploy.DeployThread.deploy(DeployThread.java:174)
> at
> com.sun.enterprise.management.deploy.DeployThread.run(DeployThread.java:210)
> |#]
> =================================================================
>
> Has anyone on this forum encountered something like this... Any
> help will be highly appreciated. If you feel that there is some
> other forum which will be able to help, please advice.
>
>
> Thanks in advance...
>
>
> Thanks,
>
> ** Sajit **
>
> ** **
> ------------------------------------------------------------------------------------------------------------------
>
>
>