Spurious client time out errors -- duplicate transmission
Hi, I am using Axis2C/1.5.0 on a Linux server as a client communicating to a Web service. Each message is delivered to a possibly different web service through a separate process. The process communicates either via http or https depending on remote web service configuration On couple of occasions, I got time out error at the client, while message was successfully received at the host. I have set the session time out to 3 minutes. When I enable the trace log, this problem does not happen. Here is a snapshot of axis2c log. 1) [Thu Feb 5 17:05:03 2009] [error] http_client.c(460) Response timed out [Thu Feb 5 17:05:03 2009] [error] http_sender.c(1342) status_code 0 [Thu Feb 5 17:05:03 2009] [error] engine.c(179) Transport sender invoke failed 2) [Thu Feb 5 17:05:03 2009] [error] http_client.c(460) Response timed out [Thu Feb 5 17:05:03 2009] [error] http_sender.c(1342) status_code 0 [Thu Feb 5 17:05:03 2009] [error] engine.c(179) Transport sender invoke failed 3) [Thu Feb 5 17:15:41 2009] [error] http_client.c(460) Response timed out [Thu Feb 5 17:15:41 2009] [error] http_sender.c(1342) status_code 0 [Thu Feb 5 17:15:41 2009] [error] engine.c(179) Transport sender invoke failed 4) [Thu Feb 5 17:19:47 2009] [error] http_client.c(460) Response timed out [Thu Feb 5 17:19:47 2009] [error] http_sender.c(1342) status_code 0 [Thu Feb 5 17:19:47 2009] [error] engine.c(179) Transport sender invoke failed For each of the above 4 attempts, message was delivered at the web service. In addition, the client received time-out as soon as the request was sent even though session timeout is set to 180 seconds. Here is the time when message was sent. 1) 17:05:02 16 [9406] SendMessage: Call web service. Signature reqd 0 17:05:03 16 [9406] axis2_stub_op_ReceiveEasyLinkFaxService_ReceiveFax: return code is null 2) 17:05:03 16 [9407] SendMessage: Call web service. Signature reqd 0 17:05:03 16 [9407] axis2_stub_op_ReceiveEasyLinkFaxService_ReceiveFax: return code is null 3) 17:15:41 16 [9672] SendMessage: Call web service. Signature reqd 0 17:15:41 16 [9672] axis2_stub_op_ReceiveEasyLinkFaxService_ReceiveFax: return code is null 4) 17:19:47 16 [9726] SendMessage: Call web service. Signature reqd 0 17:19:47 16 [9726] axis2_stub_op_ReceiveEasyLinkFaxService_ReceiveFax: return code is null Thanks, Raghu
RE: Spurious client time out errors -- duplicate transmission
Hi, This problem happens only when I use HTTP protocol. With HTTPS every thing works fine. One message is sent and one is received. I am using Axis2C/1.5.0 on a Linux server as a client communicating to a Web service. Each message is delivered to a possibly different web service through a separate process. The process communicates either via http or https depending on remote web service configuration On couple of occasions, I got time out error at the client, while message was successfully received at the host. I have set the session time out to 3 minutes. When I enable the trace log, this problem does not happen. Here is a snapshot of axis2c log. 1) [Thu Feb 5 17:05:03 2009] [error] http_client.c(460) Response timed out [Thu Feb 5 17:05:03 2009] [error] http_sender.c(1342) status_code 0 [Thu Feb 5 17:05:03 2009] [error] engine.c(179) Transport sender invoke failed 2) [Thu Feb 5 17:05:03 2009] [error] http_client.c(460) Response timed out [Thu Feb 5 17:05:03 2009] [error] http_sender.c(1342) status_code 0 [Thu Feb 5 17:05:03 2009] [error] engine.c(179) Transport sender invoke failed 3) [Thu Feb 5 17:15:41 2009] [error] http_client.c(460) Response timed out [Thu Feb 5 17:15:41 2009] [error] http_sender.c(1342) status_code 0 [Thu Feb 5 17:15:41 2009] [error] engine.c(179) Transport sender invoke failed 4) [Thu Feb 5 17:19:47 2009] [error] http_client.c(460) Response timed out [Thu Feb 5 17:19:47 2009] [error] http_sender.c(1342) status_code 0 [Thu Feb 5 17:19:47 2009] [error] engine.c(179) Transport sender invoke failed For each of the above 4 attempts, message was delivered at the web service. In addition, the client received time-out as soon as the request was sent even though session timeout is set to 180 seconds. Here is the time when message was sent. 1) 17:05:02 16 [9406] SendMessage: Call web service. Signature reqd 0 17:05:03 16 [9406] axis2_stub_op_ReceiveEasyLinkFaxService_ReceiveFax: return code is null 2) 17:05:03 16 [9407] SendMessage: Call web service. Signature reqd 0 17:05:03 16 [9407] axis2_stub_op_ReceiveEasyLinkFaxService_ReceiveFax: return code is null 3) 17:15:41 16 [9672] SendMessage: Call web service. Signature reqd 0 17:15:41 16 [9672] axis2_stub_op_ReceiveEasyLinkFaxService_ReceiveFax: return code is null 4) 17:19:47 16 [9726] SendMessage: Call web service. Signature reqd 0 17:19:47 16 [9726] axis2_stub_op_ReceiveEasyLinkFaxService_ReceiveFax: return code is null Thanks, Raghu
RE: Axis C++ 1.6 client app connecting using https through http proxy
Ryan, Just send the stuff to me.I think you can also attach files to the jira.. If not, I can attach the files when you send them. thanks. Nadir Amra McCullough, Ryan rmccullo...@rightnow.com wrote on 02/05/2009 07:39:02 PM: [image removed] RE: Axis C++ 1.6 client app connecting using https through http proxy McCullough, Ryan to: Apache AXIS C User List 02/05/2009 07:39 PM Cc: klitos.kyria...@gmail.com, Nadir Amra I think I have a working solution. Klitos, would you be willing to test my changes? Do you need Axis binaries or source code? Nadir, if Klitos reports that my changes work, how can I go about getting these changes included in the project? -Ryan -Original Message- From: Klitos Kyriacou [mailto:klitos.kyria...@gmail.com] Sent: Thursday, February 05, 2009 3:36 AM To: Apache AXIS C User List Subject: Re: Axis C++ 1.6 client app connecting using https through http proxy Thanks! That issue seems to have been open for two years. Hopefully, your useful test report will help to move things on. Klitos
How to get a value from SOAP header using Axis C++?
My apps server needs to talk to Informatica WS. It sends a session ID in the header which should be retrieved and used in all their requests. How can I get this value from a SOAP header? Vassilli Golikov Equity Derivatives IT Credit Suisse Securities (USA) LLC One Madison Avenue 10th Floor New York, NY 10010 212-325-8972 (Tel) Email: vassili.goli...@credit-suisse.com == Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ==
RE: How to get a value from SOAP header using Axis C++?
Are you using Axis2/c? or Axis c++? From: Golikov, Vassili [mailto:vassili.goli...@credit-suisse.com] Sent: Friday, February 06, 2009 2:50 PM To: axis-c-user@ws.apache.org Subject: How to get a value from SOAP header using Axis C++? My apps server needs to talk to Informatica WS. It sends a session ID in the header which should be retrieved and used in all their requests. How can I get this value from a SOAP header? Vassilli Golikov Equity Derivatives IT Credit Suisse Securities (USA) LLC One Madison Avenue 10th Floor New York, NY 10010 212-325-8972 (Tel) Email: vassili.goli...@credit-suisse.com == Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ==
RE: How to get a value from SOAP header using Axis C++?
C++. This is actual response from PowerCenter: soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; soapenv:Header ns1:Context soapenv:actor= soapenv:mustUnderstand=0 xmlns:ns1=http://www.informatica.com/wsh; SessionId1d2b79bbe22efa2011f4cf3a9db/SessionId /ns1:Context /soapenv:Header soapenv:Body LoginReturn xmlns=http://www.informatica.com/wsh;1d2b79bbe22efa2011f4cf3a9db/Logi nReturn /soapenv:Body /soapenv:Envelope Session ID is mentioned in two places. In the header: SessionId1d2b79bbe22efa2011f4cf3a9db/SessionId and in the body LoginReturn xmlns=http://www.informatica.com/wsh;1d2b79bbe22efa2011f4cf3a9db/Logi nReturn Could you tell me how to get that Session Id and re-submit in another header? E.g. soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:xsd=http://www.w3.org/2001/XMLSchema; soap:Header ns0:Context xmlns:ns0=http://www.informatica.com/wsh; SessionId[string]/SessionId /ns0:Context /soap:Header soap:Body ns0:GetWorkflowLog xmlns:ns0=http://www.informatica.com/wsh; DIServiceInfo DomainName[string]/DomainName ServiceName[string]/ServiceName /DIServiceInfo FolderName[string]/FolderName WorkflowName[string]/WorkflowName WorkflowRunId[int]/WorkflowRunId WorkflowRunInstanceName[string]/WorkflowRunInstanceName Timeout[int]/Timeout /ns0:GetWorkflowLog /soap:Body /soap:Envelope Session ID should be here ns0:Context xmlns:ns0=http://www.informatica.com/wsh; SessionId[string]/SessionId /ns0:Context From: McCullough, Ryan [mailto:rmccullo...@rightnow.com] Sent: Friday, February 06, 2009 4:59 PM To: Apache AXIS C User List Subject: RE: How to get a value from SOAP header using Axis C++? Are you using Axis2/c? or Axis c++? From: Golikov, Vassili [mailto:vassili.goli...@credit-suisse.com] Sent: Friday, February 06, 2009 2:50 PM To: axis-c-user@ws.apache.org Subject: How to get a value from SOAP header using Axis C++? My apps server needs to talk to Informatica WS. It sends a session ID in the header which should be retrieved and used in all their requests. How can I get this value from a SOAP header? Vassilli Golikov Equity Derivatives IT Credit Suisse Securities (USA) LLC One Madison Avenue 10th Floor New York, NY 10010 212-325-8972 (Tel) Email: vassili.goli...@credit-suisse.com == Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html == == Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ==
RE: How to get a value from SOAP header using Axis C++?
We had a similar issue. We resolved it by modifying the source code and compiling our own Axis binaries. Add the following axis\include\axis\client\Call.hpp: /** * Returns the DeSerialized response header. */ IHeaderBlock* getDeSerHeaderBlock(const AxisChar * pName, const AxisChar * pNamespace); axis\src\engine\client\Call.cpp IHeaderBlock* Call::getDeSerHeaderBlock(const AxisChar * pName, const AxisChar * pNamespace) { if (m_pIWSDZ != NULL) { return m_pIWSDZ-getHeaderBlock(pName, pNamespace, false); } else { return NULL; } } axis\src\soap\SoapDeSerializer.h IHeaderBlock* getHeaderBlock(const AxisChar* pName, const AxisChar* pNamespace, bool bRemoveOrNot); axis\src\soap\SoapDeSerializer.cpp /* * Header block parsing should be done differently for different SOAP versions. * Since the Header blocks may be requested in a different order than it is in * the SOAP stream there must be a mechanism to manage the situation. Possibly * to re-parse the stream part which has unused header blocks. */ IHeaderBlock *SoapDeSerializer:: getHeaderBlock (const AxisChar * pName, const AxisChar * pNamespace, bool bRemoveOrNot) { // if no Header element there can be no Header blocks if (!m_pHeader) return NULL; return m_pHeader-getHeaderBlock (pName, pNamespace, bRemoveOrNot); } -Ryan From: Golikov, Vassili [mailto:vassili.goli...@credit-suisse.com] Sent: Friday, February 06, 2009 3:05 PM To: Apache AXIS C User List Subject: RE: How to get a value from SOAP header using Axis C++? C++. This is actual response from PowerCenter: soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; soapenv:Header ns1:Context soapenv:actor= soapenv:mustUnderstand=0 xmlns:ns1=http://www.informatica.com/wsh; SessionId1d2b79bbe22efa2011f4cf3a9db/SessionId /ns1:Context /soapenv:Header soapenv:Body LoginReturn xmlns=http://www.informatica.com/wsh;1d2b79bbe22efa2011f4cf3a9db/LoginReturn /soapenv:Body /soapenv:Envelope Session ID is mentioned in two places. In the header: SessionId1d2b79bbe22efa2011f4cf3a9db/SessionId and in the body LoginReturn xmlns=http://www.informatica.com/wsh;1d2b79bbe22efa2011f4cf3a9db/LoginReturn Could you tell me how to get that Session Id and re-submit in another header? E.g. soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:xsd=http://www.w3.org/2001/XMLSchema; soap:Header ns0:Context xmlns:ns0=http://www.informatica.com/wsh; SessionId[string]/SessionId /ns0:Context /soap:Header soap:Body ns0:GetWorkflowLog xmlns:ns0=http://www.informatica.com/wsh; DIServiceInfo DomainName[string]/DomainName ServiceName[string]/ServiceName /DIServiceInfo FolderName[string]/FolderName WorkflowName[string]/WorkflowName WorkflowRunId[int]/WorkflowRunId WorkflowRunInstanceName[string]/WorkflowRunInstanceName Timeout[int]/Timeout /ns0:GetWorkflowLog /soap:Body /soap:Envelope Session ID should be here ns0:Context xmlns:ns0=http://www.informatica.com/wsh; SessionId[string]/SessionId /ns0:Context From: McCullough, Ryan [mailto:rmccullo...@rightnow.com] Sent: Friday, February 06, 2009 4:59 PM To: Apache AXIS C User List Subject: RE: How to get a value from SOAP header using Axis C++? Are you using Axis2/c? or Axis c++? From: Golikov, Vassili [mailto:vassili.goli...@credit-suisse.com] Sent: Friday, February 06, 2009 2:50 PM To: axis-c-user@ws.apache.org Subject: How to get a value from SOAP header using Axis C++? My apps server needs to talk to Informatica WS. It sends a session ID in the header which should be retrieved and used in all their requests. How can I get this value from a SOAP header? Vassilli Golikov Equity Derivatives IT Credit Suisse Securities (USA) LLC One Madison Avenue 10th Floor New York, NY 10010 212-325-8972 (Tel) Email: vassili.goli...@credit-suisse.com == Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html == == Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ==
Re: InOnlyAxisOperation Error
In your messageReceivers can you try using the following instead, messageReceivers messageReceiver mep=http://www.w3.org/ns/wsdl/in-only; class=org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver/ messageReceiver mep=http://www.w3.org/ns/wsdl/in-out; class=org.apache.axis2.rpc.receivers.RPCMessageReceiver/ /messageReceivers Thanks, Keith. On Fri, Feb 6, 2009 at 11:50 AM, Sanjay Gupta sanjay.gu...@primal.comwrote: Hi Keith, Here is my services.xml files. Thanks Sanjay serviceGroup service name=Provision scope=application targetNamespace= http://provision.ws.ccb.primalsw.com/; description Provision Service /description messageReceivers messageReceiver mep=http://www.w3.org/2004/08/wsdl/in-out; class=org.apache.axis2.rpc.receivers.RPCMessageReceiver/ messageReceiver mep=http://www.w3.org/2004/08/wsdl/in-only; class=org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver/ /messageReceivers schema schemaNamespace=http://provision.ws.ccb.primalsw.com/xsd/ parameter name=ServiceClasscom.primalsw.ccb.ws.ProvisionHandler/parameter /service /serviceGroup -Original Message- From: keith chapman [mailto:keithgchap...@gmail.comkeithgchap...@gmail.com ] Sent: Thu 2/5/2009 10:01 PM To: axis-user@ws.apache.org Subject: Re: InOnlyAxisOperation Error Can you provide your service please. You haven't provided enough information to help you... Thanks, Keith. On Thu, Feb 5, 2009 at 10:55 PM, Sanjay Gupta sanjay.gu...@primal.com wrote: Hi, I just have upgraded my axis 1.2 web services to 1.4.1 and getting error while calling a service which returns nothing(void). See the stack trace below. The doc mentions these four types of operations but I don't know which one to pick and how to set it during client generation. DoInOnly, NoParameters, TwoWayOneParameterEcho, and MultipleParametersAddItem I have both types of operations with return and without return. All my operations takes some kind of argument simple as well as some that takes customer objects. Any help will be greatly appreciated. Sanjay [ERROR] An access occurred that is not valid. java.lang.UnsupportedOperationException: An access occurred that is not valid. at org.apache.axis2.description.InOnlyAxisOperation.getMessage(InOnlyAxisOperation.java:109) at org.apache.axis2.util.MessageContextBuilder.createOutMessageContext(MessageContextBuilder.java:190) at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.jav :37) at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100) at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176) at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133) at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:619) -- Keith Chapman Senior Software Engineer WSO2 Inc. Oxygenating the Web Service Platform. http://wso2.org/ blog: http://www.keith-chapman.org -- Keith Chapman Senior Software Engineer WSO2 Inc. Oxygenating the Web Service Platform. http://wso2.org/ blog: http://www.keith-chapman.org
Re: Error establishing end to end conectivity in axis and jboss
On Thu, Feb 5, 2009 at 4:46 PM, Salman A. Kagzi salma...@s7software.comwrote: Guo, If I replace jboss integrated axis2 with a standalone axis2 server, the same code works fine. As mentioned earlier everything works (i.e. code works) when I deploy my web service under axis2 standalone server. I face this issue only when I try to deploy my web service under jboss. try http://192.168.1.28:9000/services/ http://192.168.1.28:9000/axis2/services/ without axis2 part. Anyway you may try Apache Synapse[1] for this kind of routing senarios. [1] http://synapse.apache.org/ -Salman -Original Message- From: Guo Tianchong [mailto:gu...@nec-as.nec.com.cn] Sent: Thursday, February 05, 2009 2:50 PM To: axis-user@ws.apache.org Subject: Re: Error establishing end to end conectivity in axis and jboss hi Salman, I'm sorry. It should be M/C-2. please check your code in M/C-1 calling the M/C-2's WebService Guo - Original Message - From: Salman A. Kagzi salma...@s7software.com To: axis-user@ws.apache.org Sent: Thursday, February 05, 2009 4:43 PM Subject: RE: Error establishing end to end conectivity in axis and jboss | Hi Guo, | | Thanks for your response. | | But M/C-3 is not a hosting a webservice. It's a plain java client to invoke | WS on M/C-1 which will invoke WS on M/C-2. M/C-2 now returns some data which | is later stored on M/C-1. | | You can see that now M/C-1 in not trying to connect to M/C-3 at all. | Also the exception is seen on M/C-2 console. | | -Salman | | -Original Message- | From: Guo Tianchong [mailto:gu...@nec-as.nec.com.cn] | Sent: Thursday, February 05, 2009 1:59 PM | To: axis-user@ws.apache.org | Subject: Re: Error establishing end to end conectivity in axis and jboss | | hi Salman, | | It seems that you didn't speify the action of M/C-3's WebService. | || http://192.168.1.28:9000/axis2/services/ and the WSA || Action = null | | please check your code in M/C-1 calling the M/C-3's WebService | | Guo | | - Original Message - | From: Salman A. Kagzi salma...@s7software.com | To: axis-user@ws.apache.org; axis-...@ws.apache.org | Sent: Thursday, February 05, 2009 2:33 PM | Subject: Error establishing end to end conectivity in axis and jboss | | || Hi All, || || I have an axis web service which can acts as a client as well as server. || || I am trying to deploy two instances of this web service on separate | servers || and try and setup a communication link between them. || || On M/C-1 I have installed axis2 1.3 under jboss 4.0.5 and have deployed my || web service. || On M/C-2 I have installed a standalone axis2 1.3 server and have my | service || deployed there. || Both deployments are successful and no error/exception is seen. || || I have a client running on M/C-3, this is a simple java program to call my || web service deployed on M/C-1 which will in turn call the web service on || M/C-2. || Web service on M/C-2 returns some data through callback to M/C-1 which | will || in turn pass it over to M/C-3. || || When I call this service I am getting following exception on axis2 server || running on M/C-2 || org.apache.axis2.AxisFault: The endpoint reference (EPR) for the || Operation not found is || http://192.168.1.28:9000/axis2/services/ and the WSA || Action = null ||at || | org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java || :86) ||at org.apache.axis2.engine.Phase.invoke(Phase.java:308) ||at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:212) ||at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:132) ||at || | org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HT || TPTransportUtils.java:275) ||at || | org.apache.axis2.transport.nhttp.ServerWorker.processPost(ServerWorker.java: || 207) ||at || org.apache.axis2.transport.nhttp.ServerWorker.run(ServerWorker.java:171) ||at || | edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run || Task(ThreadPoolExecutor.java:665) ||at || | edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run || (ThreadPoolExecutor.java:690) ||at java.lang.Thread.run(Thread.java:595) || || I am trying to use HttpCoreNIOListener on both ends. As on later stage I || need to enable ssl as well for these web service || || transportReceiver name=http || class=org.apache.axis2.transport.nhttp.HttpCoreNIOListener || parameter name=port locked=false8080/parameter || parameter name=non-blocking locked=falsetrue/parameter || /transportReceiver || || PS: I have tested many different configurations and only this one works | for || me. || On Jboss axis2.xml when I use SimpleHTTPServer for transportReceiver and || CommonsHTTPTransportSender for transportSender and disable global | addressing ||
Deploying axis2 in tomcat 6
Hi I'm getting the following exception when trying to deploy a war file that contains an application with axis2 web services, it contains all the libraries needed and the axis2.war file inside. I have tested in my pc with a downloaded tomcat 6 and it works smoothly, but when I try to deploy it in an other tomcat 6 server, it gives the following exception, any ideas of what can be happening? [WARN] Exception extracting jars into temporary directory : java.io.FileNotFoundException : switching to alternate class loading mechanism [ERROR] java.lang.RuntimeException: java.io.FileNotFoundException: loading repository from classpath java.lang.RuntimeException: java.io.FileNotFoundException at org.apache.axis2.deployment.util.Utils.findLibJars(Utils.java:870) at org.apache.axis2.deployment.util.Utils.createClassLoader(Utils.java:946) at org.apache.axis2.deployment.DeploymentEngine.loadRepositoryFromURL(DeploymentEngine.java:234) at org.apache.axis2.deployment.WarBasedAxisConfigurator.getAxisConfiguration(WarBasedAxisConfigurator.java:238) at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:68) at org.apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.java:516) at org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:436) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4058) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4364) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:829) at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:718) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490) at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1215) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) at java.lang.Thread.run(Thread.java:619) Caused by: java.io.FileNotFoundException at org.apache.naming.resources.DirContextURLConnection.getInputStream(DirContextURLConnection.java:298) at java.net.URL.openStream(URL.java:1009) at org.apache.axis2.deployment.util.Utils.findLibJars(Utils.java:852) ... 24 more [INFO] Module validation failed: The system is attempting to engage a module that is not available: addressing [INFO] org.apache.axis2.deployment.DeploymentException: The system is attempting to engage a module that is not available: addressing -- View this message in context: http://www.nabble.com/Deploying-axis2-in-tomcat-6-tp21873295p21873295.html Sent from the Axis - User mailing list archive at Nabble.com.
Re: Deploying axis2 in tomcat 6
On Fri, Feb 6, 2009 at 11:20 AM, rabelenda rabele...@gmail.com wrote: [ERROR] java.lang.RuntimeException: java.io.FileNotFoundException: loading repository from classpath java.lang.RuntimeException: java.io.FileNotFoundException snip [INFO] Module validation failed: The system is attempting to engage a module that is not available: addressing [INFO] org.apache.axis2.deployment.DeploymentException: The system is attempting to engage a module that is not available: addressing You seem to be missing the WEB-INF/modules dir and the mandatory addressing.mar file. - R
Re: Deploying axis2 in tomcat 6
iksrazal wrote: On Fri, Feb 6, 2009 at 11:20 AM, rabelenda rabele...@gmail.com wrote: [ERROR] java.lang.RuntimeException: java.io.FileNotFoundException: loading repository from classpath java.lang.RuntimeException: java.io.FileNotFoundException snip [INFO] Module validation failed: The system is attempting to engage a module that is not available: addressing [INFO] org.apache.axis2.deployment.DeploymentException: The system is attempting to engage a module that is not available: addressing You seem to be missing the WEB-INF/modules dir and the mandatory addressing.mar file. - R Nop, the module addressing-1.41.mar is there, and also inside the axis2.war file. -- View this message in context: http://www.nabble.com/Deploying-axis2-in-tomcat-6-tp21873295p21873482.html Sent from the Axis - User mailing list archive at Nabble.com.
Re: Deploying axis2 in tomcat 6
iksrazal wrote: On Fri, Feb 6, 2009 at 11:20 AM, rabelenda rabele...@gmail.com wrote: [ERROR] java.lang.RuntimeException: java.io.FileNotFoundException: loading repository from classpath java.lang.RuntimeException: java.io.FileNotFoundException snip [INFO] Module validation failed: The system is attempting to engage a module that is not available: addressing [INFO] org.apache.axis2.deployment.DeploymentException: The system is attempting to engage a module that is not available: addressing You seem to be missing the WEB-INF/modules dir and the mandatory addressing.mar file. - R Nop, the module addressing-1.41.mar is there, and also inside the axis2.war file. -- View this message in context: http://www.nabble.com/Deploying-axis2-in-tomcat-6-tp21873295p21873571.html Sent from the Axis - User mailing list archive at Nabble.com.
Standalone axis2 app, how can I pass resources to MessageReceiver?
Hi, I'm trying to build an axis2 web services into an existing application framework. This current framework creates a number of resources (mainly references to internal handlers for things like logging and other common capabilities of the system) which need to be passed to the business logic so that when SOAP messages are received the business logic can extract information from the messages and pass the extracted data to these handlers. The current application framework is a standalone app and isn't running within a servlet container. It's also not built using Spring, and retrofitting it to work with Spring is not really an option. The webservice I need to implement is supported by a wsdl which I have successfully compiled into the appropriate classes and the MessageReceiver and skeleton classes. My problem is I don't know how to initialise these with the application's resources so that they get references to them Currently I'm initialising Axis2 as follows: ConfigurationContext confCon = ConfigurationContextFactory.createConfigurationContextFromFileSystem(./repository,./conf/axis2.xml); Obviously this starts up the axis2 server and deploys the services. I can modify the wdsl2java generated MessageReceiver class to add a constructor with a print statement, and the output appears in the logs. I can add print statements to the skeleton class and these show up when I push a message into the application. All working nicely. My problem is, how do I get references to the resources in my main program to the skeleton class? I have found I can pass some parameters by piggy-backing on the Configuration Context, thus - Main program: ConfigurationContext confCon = ConfigurationContextFactory.createConfigurationContextFromFileSystem(./repository,./conf/axis2.xml); Logger logger = new Logger(config); // Example of a generic Logger resource // Some trickery to pass logger reference into Message Receiver or skeleton class confCon.setProperty(TestParm, test2); MessageReceiver: public void invokeBusinessLogic(org.apache.axis2.context.MessageContext inMessage) throws org.apache.axis2.AxisFault{ try { // get the implementation class for the Web Service Object obj = getTheImplementationObject(inMessage); String testParm = (String) inMessage.getConfigurationContext().getProperty(TestParm); System.out.println(# Found TestParm =+testParm); ... Firstly is this a reasonable approach? Secondly is there any way I can do this just once, rather than for each message. Ideally I would like to do this in the Message Receiver constructor, but I can't find any way of getting any useful context information at this point. Cheers, -- Keith A. Milner
Re: sandesha problem
Any thoughts? On Mon, Feb 2, 2009 at 11:13 AM, Andrei Ivanov andrei.iva...@gmail.com wrote: On Mon, Feb 2, 2009 at 8:07 AM, Amila Suriarachchi amilasuriarach...@gmail.com wrote: Can you try with the axis2 snapshot and sandesha2 snapshot. I see that sandesha2 snapshot is using generics... and I use java 1.4 Try using different INTERNAL_KEY s rather than the SEQUENCE_KEY How can I do that? AFAIS, in both 1.3 and in snapshot the internal key is defined like this: Sandesha2Constants.INTERNAL_SEQUENCE_PREFIX + : + to + : + sequenceKey I am providing a different sequence key for each sequence... so this should make the internal key different already. thanks, Amila. On Sun, Feb 1, 2009 at 9:17 PM, Andrei Ivanov andrei.iva...@gmail.com wrote: Hello, I'm trying to add WS-RM to my services and clients, but I'm having some problems. I followed the user guide and when I tried to do some testing, I noticed some exceptions being thrown. I've generated a client stub(PersonalDataServiceStub) from the services WSDL and I've added these lines to the end of the constructor(PersonalDataServiceStub(ConfigurationContext configurationContext, String targetEndpoint, boolean useSeparateListener)): final String sequenceKey = SandeshaUtil.getUUID(); clientOptions.setProperty(SandeshaClientConstants.SEQUENCE_KEY, sequenceKey); clientOptions.setProperty(SandeshaClientConstants.LAST_MESSAGE, Constants.VALUE_TRUE); Then, in the test class I created 2 instances of the stub and called some methods: ConfigurationContext configContext = ConfigurationContextFactory.createConfigurationContextFromFileSystem(CLIENT_REPO_PATH, axis2_xml); PersonalDataServiceStub stub = new PersonalDataServiceStub(configurationContext, targetEndpoint, true); // param was initialized stub.getPersonalData(param); stub = new PersonalDataServiceStub(configurationContext, targetEndpoint, true); stub.getFamilyTree(request); I'm setting the sequenceKey myself because I want to use 2 separate sequences for the calls, but something goes wrong. I used tcpmon to see what it was doing: Client: 1. CreateSequence 2. invoke getPersonalData 3. CreateSequence (for the 2nd call) 4. TerminateSequence (for the 1st call) 5. invoke getFamilyTree 6. TerminateSequence (for the 2nd call) Server: 1. CreateSequenceResponse 2. result for getPersonalData 3. CreateSequenceResponse 4. TerminateSequence (why is the server trying to end the 1st sequence itself?) 5. result for getFamilyTree 6. Fault, the action http://schemas.xmlsoap.org/ws/2005/02/rm/TerminateSequence; cannot be processed at the receiver (probably for the 1st TerminateSequence from the client) 7. SequenceFault, the 1st sequence is already terminated... probably at step 4 the server terminated it 8. TerminateSequence, for the 2nd sequence Am I doing something wrong? or maybe it is a bug in sandesha? remember that I want to use a different sequence for each operation. If you need additional data, please tell me. Thanks -- Amila Suriarachchi WSO2 Inc. blog: http://amilachinthaka.blogspot.com/
RE: Unexpected subelement while parsing nilled response
Ah, thank you for that observation. I am a little confused as to how it happened that way, because this wsdl and the service itself were both created using axis2's java2wsdl utility. I will play around with switches to see if I can get the responses to match the namespaces. -Phil According the wsdl the namespace of the erroMessage element is http://webservices.basic.wrapper.authentisec.fod.com/xsd. but at the response it is http://webservices.basic.wrapper.authentisec.fod.com http://webservices.basic.wrapper.authentisec.fod.com/ thanks, Amila.
[axis2] Multiref client request to axis2 service
I am sorry I posted my question to the wrong group. My axis2 webservice is generated using wsdl2java tool with XMLBeans data binding extension. Webservice client is sending multiref soap envelope in the request. My WSDL is document/encoded. I have attached my WSDL file and the client request soap envelope that I receive. I am receiving the values of input parameters as null in the service. Can someone help me to find out why? Do I need to do any more changes? please help Also, in the web service response, content-length is not getting set. My web service is deployed on tomcat. I also tested this with the standalone axis2 server. My client request is using HTTP/1.0 protocol and hence tranfer-encoding chunked is disabled. Any response should be of great help. Thanks and regards, The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy the original message all copies of this message and any attachments. WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email. Please do not print this email unless it is absolutely necessary.?xml version=1.0 encoding=UTF-8? wsdl:definitions name=test targetNamespace=http://www.example.org/test/; xmlns:tns=http://www.example.org/test/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:soap=http://schemas.xmlsoap.org/wsdl/soap/; xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/; wsdl:types xsd:schema targetNamespace=http://www.example.org/test/; xsd:element name=getIPAddress xsd:complexType xsd:sequence xsd:element name=data xsd:complexType xsd:sequence xsd:element name=name type=xsd:string/ xsd:element name=statusCode type=xsd:int /xsd:element /xsd:sequence /xsd:complexType /xsd:element /xsd:sequence /xsd:complexType /xsd:element /xsd:schema /wsdl:types wsdl:message name=getIPAddressRequest wsdl:part name=parameters element=tns:getIPAddress /wsdl:part /wsdl:message wsdl:portType name=test wsdl:operation name=getIPAddress wsdl:input message=tns:getIPAddressRequest /wsdl:input /wsdl:operation /wsdl:portType wsdl:binding name=testSOAP type=tns:test soap:binding style=document transport=http://schemas.xmlsoap.org/soap/http/ wsdl:operation name=getIPAddress soap:operation soapAction=http://www.example.org/test/getIPAddress; style=document/ wsdl:input soap:body parts=parameters use=encoded encodingStyle=http://schemas.xmlsoap.org/soap/encoding// /wsdl:input wsdl:output soap:body use=encoded encodingStyle=http://schemas.xmlsoap.org/soap/encoding// /wsdl:output /wsdl:operation /wsdl:binding wsdl:service name=test wsdl:port name=testSOAP binding=tns:testSOAP soap:address location=http://www.example.org// /wsdl:port /wsdl:service /wsdl:definitions ?xml version=1.0 encoding=UTF-8? soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; soapenv:Body ns1:getIPAddress soapenv:encodingStyle=http://schemas.xmlsoap.org/soap/encoding/; xmlns:ns1=http://www.example.org/test/; data href=#id0 / /ns1:provisionComplete multiRef id=id0 soapenc:root=0 soapenv:encodingStyle=http://schemas.xmlsoap.org/soap/encoding/; xsi:type=ns2:data xmlns:soapenc=http://schemas.xmlsoap.org/soap/encoding/; xmlns:ns2=http://www.example.org/test/; name xsi:type=xsd:string100.100.100.100/name statusCode href=#id1 / /multiRef multiRef id=id1 soapenc:root=0 soapenv:encodingStyle=http://schemas.xmlsoap.org/soap/encoding/; xsi:type=ns3:statusCode xmlns:ns3=http://www.example.org/test/; xmlns:soapenc=http://schemas.xmlsoap.org/soap/encoding/; 1 /multiRef /soapenv:Body /soapenv:Envelope
Re: Deploying axis2 in tomcat 6
rabelenda wrote: iksrazal wrote: On Fri, Feb 6, 2009 at 11:20 AM, rabelenda rabele...@gmail.com wrote: [ERROR] java.lang.RuntimeException: java.io.FileNotFoundException: loading repository from classpath java.lang.RuntimeException: java.io.FileNotFoundException snip [INFO] Module validation failed: The system is attempting to engage a module that is not available: addressing [INFO] org.apache.axis2.deployment.DeploymentException: The system is attempting to engage a module that is not available: addressing You seem to be missing the WEB-INF/modules dir and the mandatory addressing.mar file. - R Nop, the module addressing-1.41.mar is there, and also inside the axis2.war file. The problem rises when I set the server to don't unpack the .wars files. -- View this message in context: http://www.nabble.com/Deploying-axis2-in-tomcat-6-tp21873295p21873584.html Sent from the Axis - User mailing list archive at Nabble.com.
RE: InOnlyAxisOperation Error
Keith, Thanks for you reply and pointer. I tried your sugession but I am still getting the error. Here is the stack trace. Thanks Sanjay [ERROR] An access occurred that is not valid. java.lang.UnsupportedOperationException: An access occurred that is not valid. at org.apache.axis2.description.InOnlyAxisOperation.getMessage(InOnlyAxisOperation.java:109) at org.apache.axis2.util.MessageContextBuilder.createOutMessageContext(MessageContextBuilder.java:190) at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java :37) at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100) at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176) at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133) at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) -Original Message- From: keith chapman [mailto:keithgchap...@gmail.com] Sent: Fri 2/6/2009 12:17 AM To: axis-user@ws.apache.org Subject: Re: InOnlyAxisOperation Error In your messageReceivers can you try using the following instead, messageReceivers messageReceiver mep=http://www.w3.org/ns/wsdl/in-only; class=org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver/ messageReceiver mep=http://www.w3.org/ns/wsdl/in-out; class=org.apache.axis2.rpc.receivers.RPCMessageReceiver/ /messageReceivers Thanks, Keith. On Fri, Feb 6, 2009 at 11:50 AM, Sanjay Gupta sanjay.gu...@primal.comwrote: Hi Keith, Here is my services.xml files. Thanks Sanjay serviceGroup service name=Provision scope=application targetNamespace= http://provision.ws.ccb.primalsw.com/; description Provision Service /description messageReceivers messageReceiver mep=http://www.w3.org/2004/08/wsdl/in-out; class=org.apache.axis2.rpc.receivers.RPCMessageReceiver/ messageReceiver mep=http://www.w3.org/2004/08/wsdl/in-only; class=org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver/ /messageReceivers schema schemaNamespace=http://provision.ws.ccb.primalsw.com/xsd/ parameter name=ServiceClasscom.primalsw.ccb.ws.ProvisionHandler/parameter /service /serviceGroup -Original Message- From: keith chapman [mailto:keithgchap...@gmail.comkeithgchap...@gmail.com ] Sent: Thu 2/5/2009 10:01 PM To: axis-user@ws.apache.org Subject: Re: InOnlyAxisOperation Error Can you provide your service please. You haven't provided enough information to help you... Thanks, Keith. On Thu, Feb 5, 2009 at 10:55 PM, Sanjay Gupta sanjay.gu...@primal.com wrote: Hi, I just have upgraded my axis 1.2 web services to 1.4.1 and getting error while calling a service which returns nothing(void). See the stack trace below. The doc mentions these four types of operations but I don't know which one to pick and how to set it during client generation. DoInOnly, NoParameters, TwoWayOneParameterEcho, and MultipleParametersAddItem I have both types of operations with return and without return. All my operations takes some kind of argument simple as well as some that takes customer objects. Any help will be greatly appreciated. Sanjay [ERROR] An access occurred that is not valid. java.lang.UnsupportedOperationException: An access occurred that is not valid. at org.apache.axis2.description.InOnlyAxisOperation.getMessage(InOnlyAxisOperation.java:109) at org.apache.axis2.util.MessageContextBuilder.createOutMessageContext(MessageContextBuilder.java:190) at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.jav :37) at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100) at
Ramapart Config based dynamic client sample code
Hello:Noticed that the OutflowConfiguration and InFlowConfiguration classes are deprectaed. Trying to see if RampartConfig could be used to get the same behavior. Saw the policy based examples but could not find any code that could add the Rampart code programmitically. 1) Please point me to some examples where the RampartConfig is done programmitically 2) I use the OperationClient to invoke webservices. Would like to add the RampartConfig() to that. Is it possible 3) Also would like to know the equivalent of OutFlow and InFlow configuration handlers using the RampartConfig. Thanks for your help and time, Regards cabear
Strings passed as parameters into Axis2 implemented web service have carriage return stripped.
I am using Axis2 1.2, and have a Web Service API which receives a text string which contains CRLF (carriage-return, linefeed) characters. By the time the string gets through the de-serialization layer on the receiving server-side, the CRLF has become just LF. This probably works well for Unix, but I am running on Windows. Is there any way to control this? Is this a bug? Anyone seen this before? Thanks, Dave
Re: Strings passed as parameters into Axis2 implemented web service have carriage return stripped.
Dave, It sounds surprising, but this is actually the expected behavior. See WSCOMMONS-243 [1] for more information why this is so and what you can do to change that behavior. Andreas [1] https://issues.apache.org/jira/browse/WSCOMMONS-243 On Fri, Feb 6, 2009 at 20:39, Kraus, David dkr...@microstrategy.com wrote: I am using Axis2 1.2, and have a Web Service API which receives a text string which contains CRLF (carriage-return, linefeed) characters. By the time the string gets through the de-serialization layer on the receiving server-side, the CRLF has become just LF. This probably works well for Unix, but I am running on Windows. Is there any way to control this? Is this a bug? Anyone seen this before? Thanks, Dave
Re: [AXIS2] Migration Issues for Axis1 - Axis2
Hi, if your application uses existing Java data objects then you may want to use JiBX data binding with Axis2. You will need to define the binding between Java objects and the XML messages. Sumit Gaikaiwari-3 wrote: Hi, I am working on migration of web-services in our project from Axis1 to Axis2. In generating client/server classes I found those are not equivalent to classes generated by Axis1 WSDL2Java utility. We have an inheritance hierarchy of data classes created in WSDL. When java classes are created using Axis1 wsdl2java, it adds a multi-value constructor to each class which passes values required by super class using super(param1, param2...) and instantiates it's own instance variable from remaining argument. Whereas, axis2 wsdl2java do not generate any constructor, so the only constructor which can be invoked is default constructor. We were using multi-value constructors in earlier business logic, so if we use these new classes directly, we will have to change code in all such places. Is there any way Axis2 to generate classes in such manner? Please let me know if I should add any other option to create such hierarchy. I have tried using ADB and XMLBeans binding. Below is the command I tried by using ADB binding- WSDL2Java -uri PlanIntegrationServices1_0.wsdl -d adb -s -o build2 -u I have also attached wsdl as well as classes generated by axis1 and axis2 style; you can notice there is a multiple arg constructor in axis1 style classes but not in axis2 generated code. Kind Regards, Sumit Gaikaiwari -- View this message in context: http://www.nabble.com/-AXIS2--Migration-Issues-for-Axis1--%3E-Axis2-tp21829252p21883065.html Sent from the Axis - User mailing list archive at Nabble.com.
Re: Ramapart Config based dynamic client sample code
Hello:The OutflowConfiguration that works right now looks like below: private static Parameter getOutflowConfiguration() { OutflowConfiguration ofc = new OutflowConfiguration(); ofc.setActionItems(Encrypt); ofc.setEncryptionUser(service); ofc.setEncryptionPropFile(client.properties); return ofc.getProperty(); } Since the OutflowConfiguration is deprecated, would like to use RampartConfiguration is possible. Don't have any policy defined for the service. Found some examples of RampartConfig() as below: private static Policy getRampartConfig(){ RampartConfig rampartConfig = new RampartConfig(); rampartConfig.setUser(client); rampartConfig.setPwCbClass(samples.quickstart.clients.PWCBHandler); CryptoConfig sigCrypto = new CryptoConfig(); sigCrypto.setProvider(org.apache.ws.security.components.crypto.Merlin); Properties props = new Properties(); props.setProperty(org.apache.ws.security.crypto.merlin.keystore.type, JKS); props.setProperty(org.apache.ws.security.crypto.merlin.file,client.jks); props.setProperty(org.apache.ws.security.crypto.merlin.keystore.password, clientPW); sigCrypto.setProp(props); rampartConfig.setSigCryptoConfig(sigCrypto); Policy policy = new Policy(); policy.addAssertion(rampartConfig); return policy; } But don't know how to bind this to the OperationClient. I also have to encrypt the request and decrycpt the response messages. Thanks, cbear On Fri, Feb 6, 2009 at 10:46 AM, Wishing Carebear wishing.careb...@gmail.com wrote: Hello:Noticed that the OutflowConfiguration and InFlowConfiguration classes are deprectaed. Trying to see if RampartConfig could be used to get the same behavior. Saw the policy based examples but could not find any code that could add the Rampart code programmitically. 1) Please point me to some examples where the RampartConfig is done programmitically 2) I use the OperationClient to invoke webservices. Would like to add the RampartConfig() to that. Is it possible 3) Also would like to know the equivalent of OutFlow and InFlow configuration handlers using the RampartConfig. Thanks for your help and time, Regards cabear
Why?
Why would I see a different set of console message when I start Tomcat from the command than when I start it in Eclipse? When I start Tomcat from the command line I see messages for the axis2.war file being deployed, but I don't see them when I start Tomcat in Eclipse.
Re: InOnlyAxisOperation Error
From the stack trace it looks like an InOutMessageReceiver was used for an InOnly Operation. Thanks, Keith. On Fri, Feb 6, 2009 at 11:27 PM, Sanjay Gupta sanjay.gu...@primal.comwrote: Keith, Thanks for you reply and pointer. I tried your sugession but I am still getting the error. Here is the stack trace. Thanks Sanjay [ERROR] An access occurred that is not valid. java.lang.UnsupportedOperationException: An access occurred that is not valid. at org.apache.axis2.description.InOnlyAxisOperation.getMessage(InOnlyAxisOperation.java:109) at org.apache.axis2.util.MessageContextBuilder.createOutMessageContext(MessageContextBuilder.java:190) at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java :37) at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100) at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176) at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133) at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) -Original Message- From: keith chapman [mailto:keithgchap...@gmail.comkeithgchap...@gmail.com ] Sent: Fri 2/6/2009 12:17 AM To: axis-user@ws.apache.org Subject: Re: InOnlyAxisOperation Error In your messageReceivers can you try using the following instead, messageReceivers messageReceiver mep=http://www.w3.org/ns/wsdl/in-only; class=org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver/ messageReceiver mep=http://www.w3.org/ns/wsdl/in-out; class=org.apache.axis2.rpc.receivers.RPCMessageReceiver/ /messageReceivers Thanks, Keith. On Fri, Feb 6, 2009 at 11:50 AM, Sanjay Gupta sanjay.gu...@primal.com wrote: Hi Keith, Here is my services.xml files. Thanks Sanjay serviceGroup service name=Provision scope=application targetNamespace= http://provision.ws.ccb.primalsw.com/; description Provision Service /description messageReceivers messageReceiver mep=http://www.w3.org/2004/08/wsdl/in-out; class=org.apache.axis2.rpc.receivers.RPCMessageReceiver/ messageReceiver mep=http://www.w3.org/2004/08/wsdl/in-only; class=org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver/ /messageReceivers schema schemaNamespace=http://provision.ws.ccb.primalsw.com/xsd/ parameter name=ServiceClasscom.primalsw.ccb.ws.ProvisionHandler/parameter /service /serviceGroup -Original Message- From: keith chapman [mailto:keithgchap...@gmail.comkeithgchap...@gmail.com keithgchap...@gmail.com ] Sent: Thu 2/5/2009 10:01 PM To: axis-user@ws.apache.org Subject: Re: InOnlyAxisOperation Error Can you provide your service please. You haven't provided enough information to help you... Thanks, Keith. On Thu, Feb 5, 2009 at 10:55 PM, Sanjay Gupta sanjay.gu...@primal.com wrote: Hi, I just have upgraded my axis 1.2 web services to 1.4.1 and getting error while calling a service which returns nothing(void). See the stack trace below. The doc mentions these four types of operations but I don't know which one to pick and how to set it during client generation. DoInOnly, NoParameters, TwoWayOneParameterEcho, and MultipleParametersAddItem I have both types of operations with return and without return. All my operations takes some kind of argument simple as well as some that takes customer objects. Any help will be greatly appreciated. Sanjay [ERROR] An access occurred that is not valid. java.lang.UnsupportedOperationException: An access occurred that is not valid. at org.apache.axis2.description.InOnlyAxisOperation.getMessage(InOnlyAxisOperation.java:109) at