Sessions in Web Services

I'm trying to manage sessions in Web Service. Can sombody tell me how to do this

a bit unspecific, anyway, here a solution for a plain JAX-RPC implementation
in a JAX-RPC client, use
((javax.xml.rpc.Stub)myProxy)._setProperty(javax.xml.rpc.Stub.SESSION_MAINTAIN_PROPERTY, Boolean.TRUE);
to let the client maintain session state
in JAX-RPC server, implement ServiceLifecycle and call getHttpSession() on the servlet endpoint context
Merten

Similar Messages

  • Handling sessions in Web Services

    Hi all,
    I am quite new to Web Services. I am facing problems in handling sessions in Web Services.
    I am using Apache Axis as SOAP engine. I have different Web Services like AuthenticationService, DataService and ReportService.
    The problem is in handling authentication. I need to authenticate only once using AuthenticationService and maintain the
    session for rest of the calls to different web services like DataService, ReportService.
    Has anyone faced similar situation?
    Please help.
    Thanks,
    Prashanth

    a bit unspecific, anyway, here a solution for a plain JAX-RPC implementation
    in a JAX-RPC client, use
    ((javax.xml.rpc.Stub)myProxy)._setProperty(javax.xml.rpc.Stub.SESSION_MAINTAIN_PROPERTY, Boolean.TRUE);
    to let the client maintain session state
    in JAX-RPC server, implement ServiceLifecycle and call getHttpSession() on the servlet endpoint context
    Merten

  • How to keep alive a session in Web Services?

    I have to do my project, that will be including some following features:
    1. Login to Application through Web Services method. For example:
    http://mydomain.com/web-services/Login?WSDL
    2. After logging in, use mySms method to send message to Cellphone through Web Services! For example:
    http://mydomain.com/web-services/mySms?WSDL
    My questions are:
    1. How can I keep alive the session after logging in the application in Web Services? In Web, I can use "Session".
    2. If someone has not logged in the Application, he/she could not use mySms method for sending Sms. How can I do that?
    3. I know, when I invoke a Web Services, one JavaBean has been called, and this bean is persistence with his own states. It means, if I set value to parameters of this bean, these values are persistence for invoked methods by other persons.
    For example:
    mySms bean has a private field "jid" inited with NULL value.
    Person A invoked mySms.
    Then, A set jid of mySms to value "A".
    Person B invoked mySms. B got jid value. He receive the result value is "A".
    The question is, how can I set mySms bean so that mySms bean is not persistence?
    Thanks many!

    Hi,
    I can right away answer your FIRST Question.
    Since WebServices are PURELY Based on SOAP which is in tern based on HTTP, they rely on a Stateless protocol.
    I am sure you know that the HTTP is the STATELESS Protocol and so you can not maintain Session and so EACH Http REQUEST is considered as a SEPERATE REQUEST.
    Now, still you want to maintain the Session in WebServices,
    The simple answer is PASSING PARAMETERS.
    Just Maintain your Session on Client (If you are using JSPs or Servlets to CAll WEBSERVICES then maintain Session through your HTTPSession) and each time you Invoke WebService PASS ON REQUIRED Parameters.
    This Approach is Exactly like your URL REWriting OR your Parameters Passing through QUERY STRINGS.
    I hope you got what I am saying!
    Take care,
    Himanshu/

  • Session with web service

    Hi,
    I would like to know if there is a kind of session management with SOAP messages. I have found the interface IF_SOAP_SESSION_PROTOCOL, in which you can put in 'stateful' mode, however I wasn't able to use it.
    In fact, I try to understand what stateful means for SOAP in SAP, and if you can log/manage the session of a user, in order to see what he do (without requested authentification/identification).
    Regards,
    Gautier
    Edit: I don't know if it is the good forum or if I would have choose 'NetWeaver Platform's one
    null

    Any comments ?
    mark
    "markhu" <[email protected]> wrote in message
    news:[email protected]..
    Hi, every one:
    Here's my question of my day - >>>
    I am using weblogic 6.1 SP2 right now - running on Unix and Win 2K,and
    I got a web service up and running called Price Update web service through
    which user can pick up a price and push a deal to another web service
    called: deal service, the deal service will take the user deal and bookthe
    deal ( sending a JMS message to a Queue, a MD will pick up and do thework,
    then send the confirmation to another JMS Queue ), then the confirmation
    will be picked up and sent to another web service , called: User Deal
    Confirmation Service, here's the question:
    1. Since the client application is only allowed to see its own confirmed
    deals, how I can make the confirmed deal encrypted based on a server
    generated key or the session id that client application provides
    2. Now, I have 3 webservices: update, deal and confirm, each of them has a
    client.jar file available - from the client application point of view, doI
    need all these 3 client.jar, or I just need one of them ?????
    3. How can I use web service call back in wls 6.1 sp2 ?????? - in the 7.0
    beta, you can do this easily in the workshop, in the second questionabove,
    I think I need some how relate the confirmation to the client conversation
    id ??
    thanks a lot for the input, have a nice day.
    regards,
    mark.

  • Registering EJB/Stateless Session Bean Web Service in Registry

    Hi verybody!
    I would like to know how I can register a Web Service in a registry. The web service is implemented as a session bean.
    The problem is not the actual code to register the service, but how and where can I hook this code into the application so that it is started when the application server is started.
    I've read the Sun J2EE tutorial which registered the service in the moment when the context for the servlet for an ordinary web client was created. This is not what I want. I would like to register the service when starting the EJB container, without the need to give it a kick from some external interface.
    Any help or ideas will be greatly welcome
    Regards
    PI

    1. But I thought you were using a 'stateful session bean'?
    2. For stateless session beans, there is no direct link between a remote reference and an instance of the bean. It is safe to hang on to the remote reference as long as you would like, of course it may go stale if the server dies. You will also find that the create() method does not actually contact the server, so doing it each usage costs very little. So, either way you should be fine.
    3. As for memory leaks, make sure that you are closing all statements, result sets, etc. promptly. These are commonly the problem. Also, use hprof or some other profile tool to determine what types of data you are allocating and (with better tools) what types of data you may be holding on to references to.
    Chuck

  • Envorcing authentication with session ejb web service?

    I implemented a web service as a session ejb. Some of the methods exposed by this web service require certain privileges. I modified my ejb-jar.xml file and declaratively specified this by using the <method-permission> element.
    I have a Java client. If I pass credentials (e.g., name, password) into the constructor of the stub for the web service interface, the container properly recognizes this information, authenticates the user and either responds to or rejects the request based on if the user is permitted to call the method.
    I have a non-Java client. If I try to do the same thing, it does not work. Peeking underneath the covers, I've discovered that the credentials are never being used.
    Now I did get something to work. If I manually modify the web.xml for the web-services.war that is generated by servicegen to put a security constraint on the URL for the web service using the <security-constraint> element, when I run the non-Java client again, the credentials are used, properly recognized, etc.
    (1) Does anyone know why the security constraint is necessary for the non-Java client but not the Java client?
    (2) Am I doing something wrong? missing something? Is there a different way to do this?
    (3) Since I implemented the web service as a session EJB but it appears the generated web-services.war content needs to be manually modified, is there a way to generate this security constraint? I've tried various things and cannot seem to do this.
    Thanks for feedback!

    Debu,
    Yes, it successfully deployed.
    Here are the messages from the failed run.
    BUILD SUCCESSFUL
    Total time: 33 seconds
    D:\Oracle_ejb3.0\demo\howtoejb30ws>ant run
    Buildfile: build.xml
    common:
    [echo] BuildName: ejb30ws
    [echo] BuildHome: D:\Oracle_ejb3.0\demo\howtoejb30ws
    [echo] BuildFile: D:\Oracle_ejb3.0\demo\howtoejb30ws\build.xml
    [echo] BuildJVM: 1.5
    oracle-env-check:
    java-env-check:
    init:
    [echo] -----> Initializing project properties
    setup:
    [echo] -----> Creating the required sub-directories
    cli-setup:
    [echo] -----> Setting up the application client module
    [oracle:genProxy] null, WSDLException: faultCode=INVALID_WSDL: The document: http://localhost:8888/ejb
    /ejb30ws?wsdl is not a wsdl file or does not have a root element of "definitions" in the "http://schem
    mlsoap.org/wsdl/" namespace or the "http://www.w3.org/2004/08/wsdl" namespace.
    [oracle:genProxy] WSDLException: faultCode=INVALID_WSDL: The document: http://localhost:8888/ejb30ws/e
    ws?wsdl is not a wsdl file or does not have a root element of "definitions" in the "http://schemas.xml
    .org/wsdl/" namespace or the "http://www.w3.org/2004/08/wsdl" namespace.
    BUILD FAILED
    D:\Oracle_ejb3.0\demo\howtoejb30ws\build.xml:316: oracle.j2ee.ws.common.tools.api.WsdlValidationExcept
    null, WSDLException: faultCode=INVALID_WSDL: The document: http://localhost:8888/ejb30ws/ejb30ws?wsdl
    not a wsdl file or does not have a root element of "definitions" in the "http://schemas.xmlsoap.org/ws
    namespace or the "http://www.w3.org/2004/08/wsdl" namespace.
    Total time: 3 seconds
    D:\Oracle_ejb3.0\demo\howtoejb30ws>

  • Authenticating EJB 3 Session Bean Web services

    I have some session beans that I want to expose directly as web services in Glassfish.
    My question is how do I protect them to only be used by authorized people?
    Do I simply use standard role based JEE authentication like normal session beans?
    Is there a client example that talks to an authenticated session bean?
    If this isn't the way it is done, can someone provide an example on how it should be done?
    Thanx!

    The portable way to retrieve an EJB reference in Java EE is to either inject it or look it up via the
    component's private naming environment. The simplest way is :
    @EJB
    private DocumentManager dm;
    The global JNDI name is only used as an implementation specific way to uniquely assign an
    identifier to a specific Remote EJB. It's best for this not to appear directly in the source code.
    There's more on global JNDI names in our EJB FAQ :
    https://glassfish.dev.java.net/javaee5/ejb/EJB_FAQ.html
    The alternative to annotations is to use an ejb-ref to declare the ejb dependency. The ejb-ref
    is declared in the standard deployment descriptor corresponding to the component doing the
    lookup. Each ejb-ref has an ejb-ref-name, e.g. <ejb-ref-name>DM_ref</ejb-ref-name>
    The code looks up the ejb-ref-name relative to the java:comp/env namespace to retrieve the
    EJB reference.
    DocumentManager dm = (DocumentManager)
    new InitialContext().lookup("java:comp/env/DM_ref");

  • Session and Web Services

    session variables can't store session data when using for Web
    Services, is that right?

    Hi
    Axis2 offers two ways of doing session management. The first way uses a cookie. You need to specify scope="transportsession" in your services.xml, and ensure that cookies are enabled.
    The second way is not dependent on HTTP cookies, but uses WS-Addressing headers instead. It is scope="soapsession". If you use the Axis2 client then you can do this very simply use setManageSession(true) on your ServiceClient.
    e.g. stub._getServiceClient.setManageSession(true);
    If you use another client, you will need to get the header from the response message and add it to future requests yourself.
    Can I suggest you move this discussion to [email protected] where all the axis2 experts hang out?
    Paul

  • Using session in Web Service

    Hello friends;
    I have a question. Can � use session in webservice? Does Web service support session? I searched but didn' t find a good result.

    This has been logged as a bug and was upgraded to severe in March, but nothing has been done on it as far as I am aware. Beware this bug also affects global temporary tables--the same session and everything related to --including session context variables and global temp tables are shared by every call to the web service.
    Service Request 6067517.994 - SYS_CONTEXT SESSION DATA IS NOT PRIVATE BETWEEN MULTIPLE CLIENT SESSIONS has been updated by Oracle Support with relevant information on 18-JAN-07.
    To view the progress on-line via MetaLink, go to this URL:
    http://metalink.oracle.com/metalink/plsql/tar_main.this_tar?tar_num=6067517.994&p_ctryCode=840

  • Error running "Develop a Stateless Session EJB Web Service using EJB 3.0"

    Running this "how-to," the build and deploy worked fine for me, but when I ran "ant run," I got:
    [echo] -----> Setting up the application client module
    [oracle:genProxy] null, WSDLException: faultCode=INVALID_WSDL: The document: http://localhost:8888/ejb30ws/ejb30ws?wsdl is not a wsdl file or does not have a root element of "definitions" in the "http://schemas.xmlsoap.org/wsdl/" namespace or the "http://www.w3.org/2004/08/wsdl" namespace.

    Debu,
    Yes, it successfully deployed.
    Here are the messages from the failed run.
    BUILD SUCCESSFUL
    Total time: 33 seconds
    D:\Oracle_ejb3.0\demo\howtoejb30ws>ant run
    Buildfile: build.xml
    common:
    [echo] BuildName: ejb30ws
    [echo] BuildHome: D:\Oracle_ejb3.0\demo\howtoejb30ws
    [echo] BuildFile: D:\Oracle_ejb3.0\demo\howtoejb30ws\build.xml
    [echo] BuildJVM: 1.5
    oracle-env-check:
    java-env-check:
    init:
    [echo] -----> Initializing project properties
    setup:
    [echo] -----> Creating the required sub-directories
    cli-setup:
    [echo] -----> Setting up the application client module
    [oracle:genProxy] null, WSDLException: faultCode=INVALID_WSDL: The document: http://localhost:8888/ejb
    /ejb30ws?wsdl is not a wsdl file or does not have a root element of "definitions" in the "http://schem
    mlsoap.org/wsdl/" namespace or the "http://www.w3.org/2004/08/wsdl" namespace.
    [oracle:genProxy] WSDLException: faultCode=INVALID_WSDL: The document: http://localhost:8888/ejb30ws/e
    ws?wsdl is not a wsdl file or does not have a root element of "definitions" in the "http://schemas.xml
    .org/wsdl/" namespace or the "http://www.w3.org/2004/08/wsdl" namespace.
    BUILD FAILED
    D:\Oracle_ejb3.0\demo\howtoejb30ws\build.xml:316: oracle.j2ee.ws.common.tools.api.WsdlValidationExcept
    null, WSDLException: faultCode=INVALID_WSDL: The document: http://localhost:8888/ejb30ws/ejb30ws?wsdl
    not a wsdl file or does not have a root element of "definitions" in the "http://schemas.xmlsoap.org/ws
    namespace or the "http://www.w3.org/2004/08/wsdl" namespace.
    Total time: 3 seconds
    D:\Oracle_ejb3.0\demo\howtoejb30ws>

  • Test web service proxy using EJB session bean client...

    Hello!
    I am following this blog /people/abdelmorhit.elrhazi/blog/2009/10/30/how-to-consume-an-inbound-backend-web-service-in-nwdsjboss-environment to create a EJB session bean client to access the web service proxy...
    The blog is not very clear. Where should I be deploying the web service proxy and the EJB session bean (web service client) ? on the PI 7.1 ?
    How to find out the URL for the wsdl ?
    Thanks

    > The blog is not very clear. Where should I be deploying the web service proxy and the EJB session bean (web service client) ? on the PI 7.1 ?
    "To deploy your web service proxy and session bean, right click on your JBoss server in the Servers view, and click on Add Remove Projects, add you ear file and click finish."
    You need a JBoss server.

  • Plugin based Web Service with session management

    I am trying to make a web service in java with jax-ws that should support extensions to the service without rebuilding the project. I thought it might be possible to make a standard web service and the let each plugin create their own service, making the client side plugin point to both the standard service and the plugin specific one. This way I could have user management and such in the standard service and the more plugin specific one in an other service. The problem is though, how do I make a common session for all the services? All services are running at the same server and on the same domain name.
    I checked the HTTP headers and found out that the JSESSIONID was changing when I created a new port on the client side. I was trying to implement a SOAPHandler to edit the cookie in the HTTP header, hoping that this will lead to the same session across the services. But found it hard. It was no problem reading the "Set-cookie" header, setting the cookie on the new requests was harder, as the CookieJar object seems to be internal [1]. And the MessageContext.HTTP_REQUEST_HEADERS wasn't created at the time my handlers run. Is there an easy solution to this?
    I am not sure if my idea is a good solution to the main problem, and all other ideas are more than welcome. I hope it is possible to extend the features of my server without rebuilding the project. If anything is unclear, feel free to ask :)
    [1] com.sun.xml.internal.ws.client.http.CookieJar

    Adhir_Mehta wrote:
    Could you explain plug in scenario with one example?Ok. We have not chosen exactly how to do this, but the idea is that someone may be able to extend the functionality of our server without rebuilding the project. We thought of something like a jar file with a implementation of some abstract classes. It should at least only be necessary to redeploy the project into the web container. The problem is; how do we let the plugins extend our web interface? One solution we thought of was to let each plugin have it's own service and dynamicly link to the plugin services from the main service that we provide as standard in our server. This way we may have some kind of plugin support on the clients as well, making the client side plugins know what kind of service it needs on the server side and thus extending the functionality all together.
    Hope that explains our scenario. Feel free to comment and add new ideas :)
    Regarding session management, its not advisable to manage the session in web services since that way it will become non interoperable.The documentation we found regarding sessions and jax-ws was all doing sessions with HTTPSessions, and to let the web container handle that.
    On the server side
        @Resource
        private WebServiceContext wsContext;
        private HttpSession getSession() {
            MessageContext mc = wsContext.getMessageContext();
            return ((javax.servlet.http.HttpServletRequest)mc.get(MessageContext.SERVLET_REQUEST)).getSession();
        HttpSession session = getSession();
        session.setAttribute("User", user);On the client side
    ((BindingProvider)port).getRequestContext().put(BindingProvider.SESSION_MAINTAIN_PROPERTY,true);Do you have other standard options for us on how to do session management? All ideas are more than welcome

  • Web Services Session /Singleton cluster environment

    Hi!
    I am having trouble figuring out how to do sessions in web services.
    I am trying to build an app that uses multiple GUI's in different languages (not java) and we want to implement our business layer with web services.
    I need a session to save user settings, and user info so that I can avoid going to the database and ldap in every call.
    So far my idea is to have a web service that deals with the authentication. If the user is valid, the web service will save in a singleton that has hashmap the user setting and return to the client the hashmap key as a token.
    The client has the responsibility to save the token and to use it in later calls.
    The problem that I have is that a singleton would not work in a cluster environment! And I really don't want to be passing all the user information between calls
    Any ideas how can I solve this???

    Hi Gaurav,
    Yes, the currently running session will be taken care of by the another server node which is up and running.
    Your question: Does this mean that the a session of WebDynpro application will continue to work or the changes are lost and the user needs to login again?
    "The state of the session is maintained in the persistent storage after the last successfully ended request." Which means that for example a user was filling up a form and haven't saved the changes and the server crashes then the data on that form will be lost when the second server node starts processing the request. But if the user had saved the data before the server crashes that state of the session will be stored and the data of the form will be saved and user need not fill it up again. If the Server crashes in between the HTTP request session then the request is assinged to the another server node to generate the response. In none of the case user needs to login again.
    Your question: Fundamentally the question is what WebDynpro uses behind the scenes for maintaining session?
    It uses Java Serialization to serialize the HTTP Sessions
    "Serialization involves saving the current state of an object to a stream, and restoring an equivalent object from that stream. The stream functions as a container for the object. The information stored in the container can later be used to construct an equivalent object containing the same data as the original."
    Edited by: Aishwarya Sharma on Oct 7, 2008 8:07 AM

  • Stateless EJB expose as web service

    I use JDeveloper 10.1.3.0.4 created the folllowing EJB:
    BMP: ProductEntityEJB
    Stateless session bean: ProductSessionEJB
    After i generated session bean web service via web service wizard and
    deploy the web service by the generated deployment file,
    the error occurred:
    ---- Deployment started. ---- 2006&#24180;3&#26376;29&#26085; &#19979;&#21320;02:41:16
    Target platform is Standalone OC4J 10g 10.1.3 (oc4j).
    Wrote EJB JAR file to C:\JCo\JDeveloper Workspace\JDevFYP\JDevFYPWS\EjbWebServices.jar
    Wrote EAR file to C:\JCo\JDeveloper Workspace\JDevFYP\JDevFYPWS\JDevFYP-JDevFYPWS-EJB-WS.ear
    Uploading file JDevFYP-JDevFYPWS-EJB-WS.ear ...
    Application Deployer for JDevFYP-JDevFYPWS-EJB-WS STARTS.
    Copy the archive to C:\SAP\JSF\jdevstudio1013\j2ee\home\applications\JDevFYP-JDevFYPWS-EJB-WS.ear
    Initialize C:\SAP\JSF\jdevstudio1013\j2ee\home\applications\JDevFYP-JDevFYPWS-EJB-WS.ear begins...
    Unpacking JDevFYP-JDevFYPWS-EJB-WS.ear
    Done unpacking JDevFYP-JDevFYPWS-EJB-WS.ear
    Initialize C:\SAP\JSF\jdevstudio1013\j2ee\home\applications\JDevFYP-JDevFYPWS-EJB-WS.ear ends...
    Starting application : JDevFYP-JDevFYPWS-EJB-WS
    Initializing ClassLoader(s)
    Initializing EJB container
    Loading connector(s)
    Starting up resource adapters
    Processing EJB module: EjbWebServices.jar
    application : JDevFYP-JDevFYPWS-EJB-WS is in failed state
    Operation failed with error:
         Missing class: fypws.bean.product.ProductSessionEJBBean
         Dependent class: com.evermind.server.ejb.deployment.BeanDescriptor
         Loader: oc4j:10.1.3
         Code-Source: /C:/SAP/JSF/jdevstudio1013/j2ee/home/lib/oc4j-internal.jar
         Configuration: <code-source> in META-INF/boot.xml in C:\SAP\JSF\jdevstudio1013\j2ee\home\oc4j.jar
    This load was initiated at JDevFYP-JDevFYPWS-EJB-WS.root:0.0.0 using the Class.forName() method.
    The missing class is available from the following locations:
         1. Code-Source: /C:/SAP/JSF/jdevstudio1013/j2ee/home/applications/ejb1/ejb1.jar (from <ejb> in C:\SAP\JSF\jdevstudio1013\j2ee\home\applications\ejb1)
         This code-source is available in loader ejb1.root:0.0.0.
    Deployment failed
    Elapsed time for deployment: 2 seconds
    #### Deployment incomplete. #### 2006&#24180;3&#26376;29&#26085; &#19979;&#21320;02:41:18
    How can i solve it??

    Can you try and see if installing JDeveloper into a directory with no spaces in it (i.e not in \JDeveloper Workspace\) solves the problem?

  • Error while calling a Web Service from a Session Bean

    I am trying to call a Web Service from a Session Bean using an Axis client, but I am getting the next exception:
    java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
         java.rmi.RemoteException: org/apache/axis/client/Service
         at com.sun.corba.ee.internal.javax.rmi.CORBA.Util.wrapException(Util.java:364)
         at javax.rmi.CORBA.Util.wrapException(Util.java:277)
         at com.ing.mx.seguros.siniestros.litigios.ejb._SisaServiceRemote_Stub.invocarWebSericeProveedorLegal(Unknown Source)
         at com.ing.mx.seguros.siniestros.litigios.proxy.SisaWsProxy.solicitarApoyoLegal(SisaWsProxy.java:132)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:402)
         at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:309)
         at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:333)
         at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150)
         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:120)
         at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:481)
         at org.apache.axis.server.AxisServer.invoke(AxisServer.java:323)
         at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:854)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:339)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at org.apache.catalina.core.StandardWrapperValve.invokeServletService(StandardWrapperValve.java:720)
         at org.apache.catalina.core.StandardWrapperValve.access$000(StandardWrapperValve.java:118)
         at org.apache.catalina.core.StandardWrapperValve$1.run(StandardWrapperValve.java:278)
         at java.security.AccessController.doPrivileged(Native Method)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:274)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:212)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:203)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
         at com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.java:158)
         at com.iplanet.ias.web.WebContainer.service(WebContainer.java:850)Thanks for any help provided.
    Does any one have insights about it?

    Hi Swapna,
    from your screenshot it seems that you actually try to call the service in your Data Source Expression field. You should set path to the WSDL file here actually - this could be either URL to SAP or to filesystem, as Anton suggested (this could be faster). Have you created endpoint binding for your service in transaction SOAMANAGER? If yes, then simply download the corresponding WSDL with binding or copy the URL which leads to it. But also test whether you are able to retrieve the WSDL without logging into SAP (close all browser windows and then open a new one otherwise session ID from other browser windows can be reused).
    If you have to give username and password, then setup anonymous alias in transaction SICF, for example.
    Pleas, check my previous post on the same subject here: Re: BCM7 IVR : SOAP request for client identification in CRM .
    Maybe it could help.
    Regards,
    Dawood.

Maybe you are looking for