Message Style Web Serivce Example

Hi,
Am trying the run the message style web service example that comes along
with weblogic server.
As per the documentation, I created a JMS connection factory and JMS topic,
with the JNDI names
as given in the documentation.
I built the example using ant, and that worked successfully. It created an
ear file, which I deployed successfully
in the weblogic server.
Now when I am testing the example, I run the Consumer client first and then
run the Producer client.
Now the problem is that the message is delivered sometimes and sometimes its
not delivered.
Also when I run more that one instance of Consumer client, the behaviour is
unpredicatable, the message is sometimes
delivered to all consumers, sometimes, to one consumer and sometimes to
none.
I checked the 'Montior JMS Destination' on the weblogic console, and it
shows the correct no of messages,
but it also shows some Bytes Pending.
Am not sure, what could be the reason for this. Can someone please help me
on this.
Thanks
Amit

I have an open ticket with BEA regarding this issue. The problem is in that this
type of WS in WebLogic implementation works incorrect with JMS. In particular,
the Servlet generated on the server does not disconnect itself from the JMS. New
client causes a new JMS connection. If you deal with JMS Queue and accidentally
produce more than one "listeners", the JMS decides which listener would be granted
the message. That's why you get messages randomly.
The second problem that I've found is that message-style WS capable to receive
messages that sent only by message-style WS. In my tests, the messages were sent
by regular sender ( see WLS Examples for topic and queue ) while the message-style
WS was the listener, i.e. implemented "receive" method. This WS did not get any
messages sent by regular sender but always got messages sent by another WS ( to
the queue or to the topic, did not matter ).
I've decided to write my own message-style WS instead of BEA's implementation
finally.
-Michael
"Amit" <[email protected]> wrote:
Hi,
Am trying the run the message style web service example that comes along
with weblogic server.
As per the documentation, I created a JMS connection factory and JMS
topic,
with the JNDI names
as given in the documentation.
I built the example using ant, and that worked successfully. It created
an
ear file, which I deployed successfully
in the weblogic server.
Now when I am testing the example, I run the Consumer client first and
then
run the Producer client.
Now the problem is that the message is delivered sometimes and sometimes
its
not delivered.
Also when I run more that one instance of Consumer client, the behaviour
is
unpredicatable, the message is sometimes
delivered to all consumers, sometimes, to one consumer and sometimes
to
none.
I checked the 'Montior JMS Destination' on the weblogic console, and
it
shows the correct no of messages,
but it also shows some Bytes Pending.
Am not sure, what could be the reason for this. Can someone please help
me
on this.
Thanks
Amit

Similar Messages

  • Message Style Web Services

    Could u please suggest me some examples for Message Style web services other than the sample example provided with weblogic

    Could u please suggest me some examples for Message Style web services other than the sample example provided with weblogic

  • Using message-style web service by a Microsoft client

    Does anyone have a sample Microsoft client using message-style web service? BEA
    does not provide one. I found MS client does not receive messages published between
    2 calls to method "receive", while the sample Java client ConsumerClient.java
    does.
    ConsumerClient.java is like:
    while(true){
    Object result = method.invoke(null);
    sleep(20000); // not in sample, added for my test
    System.out.println(result);
    My VBScript code is like:
    Set SC = CreateObject("MSSOAP.SoapClient")
    SC.mssoapinit "http://localhost:7001/msg/Receiver/Receiver.wsdl", "", "", ""
    While TRUE
    Res = SC.receive
    WScript.echo "Res = " & Res     
    Res = ""
    ' do something that takes 20 seconds
    Wend
    I added 20 seconds between calls so I can publish a message between 2 calls. I
    found the Java client receives the message but the VBScript client doesn't. Has
    anyone else observed this?

    Hi Kevin,
    Thanks for your feedback.
    Header support is planed for the next major release.
    regards,
    -manoj
    Kevin Jiang wrote:
    Hi Manoj,
    Can you use SOAP header to pass session id accross instead of HTTP header? MS
    SOAP toolkit 2.0 support access to SOAP header.
    My app needs to use topic instead of queue. But as I said earlier, I can use MS
    XML toolkit to access HTTP header. So I have a work around.
    Thanks for all your responses with regard to this question!
    Kevin
    manoj cheenath <[email protected]> wrote:
    Hum! i thought you were not able to receive message at all. now
    i understood the problem. yes we are using http header to pass
    session id accross, in the case of web service client who wants
    to subscribe to JMS topics. I cant think of any other way to do
    this. if you have any suggestions, i very much like to hear it.
    for your application is it possible to use queues instead of topics?
    we do not use http session information in the case of JMS queues.
    -manoj
    Kevin Jiang wrote:
    Hi Manoj,
    Your sample code is basically same as mine. It would also lose messagespublished
    between calls to "receive" method.
    I figured out what's going on. Undocumented by BEA, the web servicesends JMS
    session ID in HTTP header along with first message. When client makessubsequent
    calls to "receive", this ID must be sent back. I found this by usinga SOAP trace
    tool.
    Unfortunately, MS SOAP toolkit doesn't support access to HTTP header.So one has
    to use MS XML toolkit to use message-style web service, when writingMS clients.
    manoj cheenath <[email protected]> wrote:
    an example of using message style web services with
    ms soap toolkit is attached. let me know if this works
    for you.
    regards,
    -manoj
    Kevin Jiang wrote:
    Hi Manoj,
    I just changed anyType to string and the problem still happens.
    Thanks,
    Kevin
    manoj cheenath <[email protected]> wrote:
    I have not tryed message style web services with MS soap toolkit.
    I think the problem is because the WSDL for the message style
    web service use xsd:anyType as the return type and MS soap is
    not able to understand it. can you pls modify the xsd:anyType to
    xsd:string (or someother base type) in the WSDL.
    SC.mssoapinit can load wsdl stored as a local file. so it should
    be easy to make this change.
    regards,
    -manoj
    Kevin Jiang wrote:
    Does anyone have a sample Microsoft client using message-style
    web
    service? BEA
    does not provide one. I found MS client does not receive messages
    published
    between
    2 calls to method "receive", while the sample Java client ConsumerClient.java
    does.
    ConsumerClient.java is like:
    while(true){
    Object result = method.invoke(null);
    sleep(20000); // not in sample, added for my test
    System.out.println(result);
    My VBScript code is like:
    Set SC = CreateObject("MSSOAP.SoapClient")
    SC.mssoapinit "http://localhost:7001/msg/Receiver/Receiver.wsdl",
    While TRUE
    Res = SC.receive
    WScript.echo "Res = " & Res
    Res = ""
    ' do something that takes 20 seconds
    Wend
    I added 20 seconds between calls so I can publish a message between2 calls. I
    found the Java client receives the message but the VBScript clientdoesn't. Has
    anyone else observed this?

  • 'Payload not Serializable' with custom WSDL data types in message-style web service

    I'm implementing a message-style web service which publishes to a JMS Queue.
    I had the web service built and deployed, but noticed that the "sendRequest" message's
    part was of type "xsd:anyType." This is not specific enough for our interface,
    since it is externally facing and needs to describe the object we're expecting
    on the back end.
    So I replaced xsd:anyType with mynamespace:MyType, which is defined as a complex
    type in the same WSDL document.
    My problem is that when I test the web service with the new WSDL (using the client.jar),
    I get a server-side exception from the DestinationSendAdapter.doPost() method.
    The exception reads:
    javax.servlet.ServletException: Payload not Serializable
    at weblogic.soap.server.servlet.DestinationSendAdapter.doPost(DestinationSendAdapter.java:129)
    The domain object ('classic' JavaBean) that it should map to on the server side
    extends a class that implements Serializable, so it should inherit the trait.
    So my questions are:
    1) Did I properly go about trying to restrict the object type that gets sent to
    my Destination?
    2) If no, what is the correct way? If yes, why am I receiving the Payload not
    Serializable error if the domain object implements Serializable?
    Thanks in advance.

    Resolved:
    Apparently this is the right approach, as it boiled down to a classpath issue
    on the client-side. Thanks anyway.

  • Message driven bean and message style web service

    Hi,
    I'm trying to deploy a message style web service with a message driven EJB as
    the receiver and am getting the following exception:
    <Jan 22, 2002 10:51:06 AM PST> <Warning> <EJB> <MessageDrivenBean threw an Exception
    in onMessage(). The exception was:
    java.lang.ClassCastException: weblogic.jms.common.ObjectMessageImpl
    java.lang.ClassCastException: weblogic.jms.common.ObjectMessageImpl
    at credit.message.PostDefaultPayment.onMessage(PostDefaultPayment.java:24)
    at weblogic.ejb20.internal.MDListener.execute(MDListener.java:254)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    public void onMessage(Message message) {
    System.out.println("onMessage");
    TextMessage textmessage = (TextMessage)message. // It is throwing
    the exception on this line --looks pretty normal
    Has anyone seen this before? Am I missing something?
    Thanks,
    Tim

    Hi Tim,
    I think the problem is that you are assuming that the data type, of the message
    argument to the onMessage(Message message) method in your MDB, is of type TextMessage.
    I agree that this seems logical, especially since you passed "a string" to the
    Message-style Web Service. However, this is not the case, because the WSDL uses
    the "xsd:anyType" as the data type for any argument you pass to the send() method
    ;-) This maps to a java.lang.Object in the WebLogic Web Services implementation,
    which is why you get the casting error. Try this instead:
    public void onMessage(Message msg)
         try
              String msgText;
              ObjectMessage objMessage = (ObjectMessage)msg;
              msgText = (String)objMessage.getObject();
    System.out.println("[PostDefaultPayment.onMessage(Message)] msgText=" + msgText);
    System.out.println("[PostDefaultPayment.onMessage(Message)] msg.getJMSType()="
    + msg.getJMSType());
    System.out.println("[PostDefaultPayment.onMessage(Message)] msg.getJMSCorrelationID()="
    + msg.getJMSCorrelationID());
    System.out.println("[PostDefaultPayment.onMessage(Message)] msg.getJMSMessageID()="
    + msg.getJMSMessageID());
         catch(Exception e)
    e.printStackTrace();
    Regards,
    Mike Wooten
    "Tim Uy" <[email protected]> wrote:
    >
    Hi,
    I'm trying to deploy a message style web service with a message driven
    EJB as
    the receiver and am getting the following exception:
    <Jan 22, 2002 10:51:06 AM PST> <Warning> <EJB> <MessageDrivenBean threw
    an Exception
    in onMessage(). The exception was:
    java.lang.ClassCastException: weblogic.jms.common.ObjectMessageImpl
    java.lang.ClassCastException: weblogic.jms.common.ObjectMessageImpl
    at credit.message.PostDefaultPayment.onMessage(PostDefaultPayment.java:24)
    at weblogic.ejb20.internal.MDListener.execute(MDListener.java:254)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    public void onMessage(Message message) {
    System.out.println("onMessage");
    TextMessage textmessage = (TextMessage)message. // It
    is throwing
    the exception on this line --looks pretty normal
    Has anyone seen this before? Am I missing something?
    Thanks,
    Tim

  • Help needed in web service example. Thank!!!

    Hi,
    I tested WebLogic 6.1 message-style web service example. For the
    ProducerClient.java example, I tested successfully. But for
    the ConsumerClient.java example, I kept getting error messages.
    Can any expert offers some explanation or advice? Need to
    show my boss the cool thing. Any help is highly appreciated.
    Thanks.
    David
    The server-side message is:
    Servlet failed with Exception
    java.lang.NullPointerException
    at weblogic.soap.server.servlet.QueueReceiveAdapter.doPost(QueueReceiveA
    dapter.java:124)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
    pl.java:263)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
    pl.java:200)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
    rvletContext.java:2390)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
    pl.java:1959)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    >
    The client-side message:
    Server returned HTTP response code: 500 for URL: http://localhost:70
    01/msg/receiveMsg
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLCon
    nection.java:674)
    at sun.net.www.protocol.http.HttpURLConnection.getHeaderFieldKey(HttpURL
    Connection.java:1163)
    at weblogic.soap.WebServiceProxy.getSessionCookie(WebServiceProxy.java:5
    09)
    at weblogic.soap.WebServiceProxy.receive(WebServiceProxy.java:477)
    at weblogic.soap.WebServiceProxy.invoke(WebServiceProxy.java:431)
    at weblogic.soap.SoapMethod.invoke(SoapMethod.java:186)
    at ConsumerClient.main(ConsumerClient.java:52)

    Hi,
    I tested WebLogic 6.1 message-style web service example. For the
    ProducerClient.java example, I tested successfully. But for
    the ConsumerClient.java example, I kept getting error messages.
    Can any expert offers some explanation or advice? Need to
    show my boss the cool thing. Any help is highly appreciated.
    Thanks.
    David
    The server-side message is:
    Servlet failed with Exception
    java.lang.NullPointerException
    at weblogic.soap.server.servlet.QueueReceiveAdapter.doPost(QueueReceiveA
    dapter.java:124)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
    pl.java:263)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
    pl.java:200)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
    rvletContext.java:2390)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
    pl.java:1959)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    >
    The client-side message:
    Server returned HTTP response code: 500 for URL: http://localhost:70
    01/msg/receiveMsg
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLCon
    nection.java:674)
    at sun.net.www.protocol.http.HttpURLConnection.getHeaderFieldKey(HttpURL
    Connection.java:1163)
    at weblogic.soap.WebServiceProxy.getSessionCookie(WebServiceProxy.java:5
    09)
    at weblogic.soap.WebServiceProxy.receive(WebServiceProxy.java:477)
    at weblogic.soap.WebServiceProxy.invoke(WebServiceProxy.java:431)
    at weblogic.soap.SoapMethod.invoke(SoapMethod.java:186)
    at ConsumerClient.main(ConsumerClient.java:52)

  • Message style WebService

    Using weblogic webservicesExamples for the Message style web service I'm not able to see the Message Receive web service on the examples console messageexample web service comes
    Why is so
    Regards
    Shalini
    [att1.html]
    [tech.gif]

    Problem solved when I set the timeout in the wsgen generated ear/war/web.xml. Setting
    the timeout via console was the problem.
    Thanks
    Juerg
    "Juerg Staub" <[email protected]> wrote:
    >
    Hello,
    I am successfully using message style webservices on WLS6.1SP5 with .NET
    clients.
    One remaining problem I have is, that even when I shutdown all of my
    clients,
    the servlet sessions on the server never disapear (which is causing an
    OutOfMemory
    exeception finally). I have set the session timeout to 1 minute via the
    console,
    with no success.
    Thanks
    Juerg

  • Can I style Web Forms Confirmation Page Results - Specifically the "ERROR" message in the results?

    Hi,
    Can I style Web Forms Confirmation Page Results - Specifically the "ERROR" message in the results?
    {module_webformresults} is auto rendedered as a table with CSS IDs attached but nothing specific for the ERROR message - resulting in the error not being seen.
    The ERROR is triggered by a dulplicate User Name or Password.
    I tried using a JQuery text selector, but it does not work with the results for some reason.
    Any ideas?
    Attached is are the error results, see Username
    Thanks!
    P

    Hi Patrick,
    It should work. You know the id of the specific area, you know what string to search for in order to condition the appearance of the new message.
    Kind Regards,
    Alex

  • Example for message-style with Message Driven Bean

    hi,
    Can i have some examples of webservices message-style with
    MDB?....
    thanks

    The current version of the white-paper that Raffi
              refers to covers through 7.0. For 8.1 see also
              http://edocs.bea.com/wls/docs81/ConsoleHelp/jms_config.html#accessing_foreign_providers
              and
              http://edocs.bea.com/wls/docs81/jms/j2ee_components.html
              these features can often make integration easier.
              Tom
              Raffi wrote:
              > Doug,
              >
              > You can find very detailed information on this topic at the link below. All
              > you need to do is specify the destination-jndi-name, initial-context-factory,
              > provider-url, and connection-factory-jndi-name in weblogic-ejb-jar.xml for the
              > non-BEA JMS provider for that specific MDB.
              >
              > ftp://edownload:[email protected]/pub/downloads/jmsproviders.pdf
              >
              > Hope that helps!
              >
              > Raffi
              >
              > Doug Chew <[email protected]> wrote:
              >
              >>Can someone give me an example on how to setup a message driven bean
              >>with a foreign JMS provider using the foreign JMS provider's implementation
              >>of a connection factory. i.e. binding the foreign JMS provider's connection
              >>factory to the JNDI tree.
              >>
              >>Thanks
              >
              >
              

  • RPC Style Web Service and SSL

    Hi,
    Has anyone tried (and maybe succeeded) in accessing an
    RPC-style Web Service deployed on WebLogic Server 6.1 using
    SSL? I have a Web Service deployed and am able to access it using JNDI and the
    weblogic.soap.http.SoapInitialContextFactory
    INITIAL_CONTEXT_FACTORY. However, when I try to set the
    Context.SECURITY_PROTOCOL to "ssl" and access the secure port,
    I get a "java.net.SocketException: Unexpected end of file from
    the server" error message.
    Does the weblogic.soap.http.SoapInitialContextFactory not
    support SSL? Do I need to do the SOAP/XML messaging myself,
    without being able to make use of the WebLogic convenience
    classes? Thanks! Rob

    Alright!
    Glad you got it working ;-)
    Actually, the problem with the protocol being hardcoded to http in the wsdl.jsp,
    is a bit strange. It's unusual that the BEA engineers that coded the wsgen component
    and support classes, didn't use something like the following:
    <soap:address location="<%= request.getScheme() + "://" + request.getServerName()
    + ":" + request.getServerPort() %>/security/examples/webservices/security/PhoneBookService"/>
    I don't use wsgen too much, because I need to have more control over the J2EE
    packaging. It (wsgen) is great for spitting out stuff, but not really setup for
    doing Web service packaging that use classes (i.e. helper files, frameworks, etc.)
    that it doesn't generate. I think they (BEA) might be looking into integrating
    the Web Services assembly process with other tools like WebGain, Forte, etc. to
    alleviate these types of issues.
    Anyway, glad you got it working, so now you can help somebody else (time permitting,
    of course) with this topic in the future!
    Regards,
    Mike Wooten
    "Rob Nelson" <[email protected]> wrote:
    >
    Mike,
    Thank you very much for your response! The next to
    last sentence did it for me (when you mentioned checking
    that the location attribute of the soap:address element
    was set properly)! I noticed that when I viewed the WSDL
    file via the browser (by clicking on the link in the
    index.html page), I saw http://host:<unsecure_port> when
    I requested it over the unsecure port, but I saw
    http://host:<secure_port> when I requested the WSDL over
    the secure port. Notice it did not say https!
    So, I unjarred the EAR file that was generated by my
    wsgen task, and then unjarred the generated WAR file
    contained therein. When I looked at wsdl.jsp, I noticed
    that "http" was hard-coded in the location attribute, but
    that the host name and port number were dynamically
    generated. So I added a scriplet to dynamically place an
    "s" after "http" (if request.isSecure()) and rejarred up
    the WAR and EAR files.
    Now when I deployed the EAR file, I see "https" when
    I request the WSDL over the secure port, and my client
    (actually your client;) works! Awesome! I really appreciate
    your help! Now my only issue is why did the wsdl.jsp have
    "http" hard-coded, not accounting for secure requests.
    These files were generated by the WSGEN task in ANT.
    I figure it's either: I have a configuration problem,
    I have a problem with my ANT build script, my version of
    WebLogic Server (6.1 w/SP1 built 9/18/2001) has a bug, or
    maybe you just have to manually go in and modify the wsdl.jsp
    file if you want to use https :(. Please let me know if
    you have any insight on this, and I will also follow up
    with WebLogic support. Thanks again! Rob
    "Michael Wooten" <[email protected]> wrote:
    Hi Rob,
    I am absolutely sure the code I posted works, so we need to approach
    this from
    a different angle ;-)
    First, I know why the Context.SECURITY_PROTOCOL approach doesn't works.
    It's because
    the namespace in the Web Services code examples is not the same oneas
    the one
    used for RMI objects, EJBs, JDBC Data Sources, etc. For those objects,
    the Context.PROVIDER_URL
    is something like "t3://localhost:7001", and the INITIAL_CONTEXT_FACTORY
    is "weblogic.jndi.WLInitialContextFactory".
    The one being used with WebLogic Web Services, is mainly just functioning
    as a
    mechanism for manufacturing WebServiceProxy objects, because it is a
    non-instanciable!
    It does this by using a subclass of javax.naming.Context called SOAPContext,
    which
    is completely hidden from you, but also doesn't do much except implement
    the lookup()
    method. The implementation of this method ignores the Context.SECURITY_URL
    property,
    but it does pay attention to the "java.naming.security.principal" and
    "java.naming.security.credentials"
    properties. You don't need these properties for SSL, just Basic Authentication.
    Enough about that, though. The service end-point is a servlet right?
    So this means
    it has a URL that begins with http or https, which in turn means the
    WebLogic
    servlet engine gets the SOAP request and sends it to the StatelessSessionAdapter
    servlet. To WLS, this is just like any other HTTP/HTTPS request sent
    to it ;-)
    There is no special "SOAP-related" HTTP/HTTPS handler in WLS, but the
    SSL challenge
    dance still happens. So my first question is, are you sure you havethe
    HTTPS
    attributes set properly in the WebLogic console. SSL/HTTPS should be
    enabled and
    the "Hostname Verification Ignored" checkbox should be checked. Next,
    are you
    sure the URL assigned to the location attribute of the <service> element
    in the
    WSDL is correct (i.e. https://localhost:7002)? Are you using the "dynamic
    client"
    approach?
    Regards,
    Mike Wooten
    "Rob Nelson" <[email protected]> wrote:
    Mike,
    Thanks for your response. I downloaded the code example that
    you
    posted
    last week, as well as the code example that you posted in October for
    a similar
    request (BEA Support pointed me towards that). Unfortunately, I still
    can't get
    the Web Service to respond to the client request when the client uses
    the HTTPS
    port for the WebLogic Server.
    I tried two different client approaches. The first uses the client
    code
    that you posted in October, the WebServiceProxy approach. The second
    approach
    is based on the example in the WebLogic documentation, which uses the
    weblogic.soap.SoapInitialContextFactory
    class with the javax.naming.Context object to perform a lookup on the
    service
    (which closely resembles rmi without the narrowing).
    Both client classes fail to invoke the the service itself viaHTTPS
    (although
    they both work when making HTTP requests to the unsecure port). However,
    when
    I run the client based on the client class that you posted in October
    and make
    an HTTPS request, I can see in the output where it is able to download
    the WSDL
    file and use it (via the WebServiceProxy) to describe the availablemethods
    for
    the associated Web Service. It is only when the actual invoke() method
    is called
    on the SoapMethod object (which in turn sends the XML request to the
    Web Service
    Servlet), that the server doesn't respond, and the client fails with
    an UnexpectedEndOfFileException
    (i.e. no response).
    So, do you know why the servlet that the RPC-style Web Serviceuses
    to handle
    requests would not respond to HTTPS requests, when it processes HTTP
    requests
    without a problem (using the same client code that fails with the HTTPS
    request)?
    I am using WebLogic Server 6.1 w/SP1 on a Solaris 8 platform. Thanks
    for any
    advice you can give me! Rob
    "Michael Wooten" <[email protected]> wrote:
    Hi Rob,
    Check out the attached zip for "insights" into how to do this. It
    contains
    the
    code for two Web service "consumers" (that the new fangled word fora
    "client")
    and the web.xml and weblogic.xml for the RPC-style Web Service, that
    they consume.
    Hope this helps,
    Mike Wooten
    "Rob Nelson" <[email protected]> wrote:
    Hi,
    Has anyone tried (and maybe succeeded) in accessing an
    RPC-style Web Service deployed on WebLogic Server 6.1 using
    SSL? I have a Web Service deployed and am able to access it using
    JNDI
    and the
    weblogic.soap.http.SoapInitialContextFactory
    INITIAL_CONTEXT_FACTORY. However, when I try to set the
    Context.SECURITY_PROTOCOL to "ssl" and access the secure port,
    I get a "java.net.SocketException: Unexpected end of file from
    the server" error message.
    Does the weblogic.soap.http.SoapInitialContextFactory not
    support SSL? Do I need to do the SOAP/XML messaging myself,
    without being able to make use of the WebLogic convenience
    classes? Thanks! Rob

  • Retrieving client ip from RPC-style web service

    Hi,
    I've got an rpc-style web service and I would like to log the incoming client
    ip address (i.e. I need to get at the HTTPRequest object). Can this be done by
    passing some kind of SOAP context parameter in the argument list of my exposed
    methods? If this is not doable, is implementing SOAP message handlers the way
    to to go? I would rather not do the latter, as the web service is working well
    and don't want to play with my code too much.
    Thanks

    I tried this, following the example in http://e-docs.bea.com/wls/docs70/webapp/filters.html,
    but I still can't get it to work. The init() method gets called, but doFilter(ServletRequest
    req, ServletResponse resp, FilterChain fc) does not. The "filter" part of my
    web.xml looks like:
    <filter>
    <filter-name>serviceFilter</filter-name>
    <filter-class>webservices.ServiceFilterImpl</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>serviceFilter</filter-name>
    <url-pattern>/myPattern/myWebService</url-pattern>
    </filter-mapping>
    The only thing I could thing of is that maybe my url-pattern is wrong, although
    this seems unlikely as my web service is able to process requests sent using
    http://myWLSMachine:7001/myPattern/myWebService.
    In fact, in the the WLS access.log file, I have:
    [07/Oct/2002:11:51:01 -0400] "POST /myPattern/myWebService HTTP/1.0" 200 3011.
    Do you know if there's something in the JAX-RPC API that I could use to get at
    the client ip address? I dug through the documentation and came across something
    called "ServletEndpointContext", but I'm not sure if this will do the trick.
    Thanks for your time,
    Danielle
    "manoj cheenath" <[email protected]> wrote:
    One way to do this may be to write a servlet filter
    and map the filter to the URL of your service.
    regards,
    -manoj
    "Danielle Vella" <[email protected]> wrote in message
    news:[email protected]..
    Hi,
    I've got an rpc-style web service and I would like to log the incomingclient
    ip address (i.e. I need to get at the HTTPRequest object). Can thisbe
    done by
    passing some kind of SOAP context parameter in the argument list ofmy
    exposed
    methods? If this is not doable, is implementing SOAP message handlersthe
    way
    to to go? I would rather not do the latter, as the web service isworking
    well
    and don't want to play with my code too much.
    Thanks

  • Returning data with a doc style web service

    How does one return information using a "Document" style Web Service? WLS 8.1 restricts
    you to a single "in" parameter. Do I return information by using the "return"
    value from the Web Service (assuming it's synchronous)? If so, what are the restrictions
    on the return value. I've read the WLS 8.1 Programming Web Services document but
    it's pretty lite in the area of Document style Web Services.
    Thanks.

    WLS 8.1 supports two document styles:
    #1 document literal
    #2 document wrapped literal
    In the case of #1 a web service method can only
    take zero or one argument. There can be a return
    type (or void). The (single) argument or return type
    could be any supported type, or user defined complex
    types (java beans). In #1 the dispatch is done based
    on the incoming document and not based on the name
    of the method. You can find an example for this at:
    http://manojc.com/?sample13
    In the case of #2 a web service method can have
    any number of arguments. The WS container will
    wrap the method in to a complexType. Here,
    method name will be the name of the complexType
    and arguments will be added as elements of the
    complexType. In this case dispatch is done
    based on the method name. An example here:
    http://manojc.com/?sample14
    Regards,
    -manoj
    "Jack Ottofaro" <[email protected]> wrote in message
    news:3ea55b39$[email protected]..
    >
    How does one return information using a "Document" style Web Service? WLS8.1 restricts
    you to a single "in" parameter. Do I return information by using the"return"
    value from the Web Service (assuming it's synchronous)? If so, what arethe restrictions
    on the return value. I've read the WLS 8.1 Programming Web Servicesdocument but
    it's pretty lite in the area of Document style Web Services.
    Thanks.

  • Document Style Web Services in JDeveloper

    Hi,
    I have been creating Web Services in JDev using a simple java class which has the following signature:
    public boolean checkUserCredentials(String username, String password, int role)
    I would like to start working on more complex examples, specifically document style web services. It is my understanding that the non-wrapped document style services will return an XML type with a mapping class defined during the creation process.
    Can anyone point me to a good example of creating such a service in JDeveloper? It is my understanding that such a class would have a return type of XMLDocument, is that correct? If not do I define a custom object as a return type?
    I have searched on this topic, but couldn't find any good examples / documentation. Apologies if im missing something.
    Thanks

    Dev update: WSDL file seems fine. The problem is that it's for a document-bare service and, by default, the Unwrap Wrapped Parameters option on step 2 of the top-down wizard is enabled and checked. This means that we try to pick apart the input message into a series of parameters, yielding the error shown because a document-bare operation must have only one input parameter.
    If the Unwrap Wrapped Parameters option is unchecked, creation of the top-down service will succeed. In future, we ought to disable the option completely for everything but document-wrapped services, as that's the only time it applies.
    This is covered by bug 4630382.

  • J2ME + message style "rpc/encoding"

    Hi,
    I have a web services with message style "rpc/encoded" and i need consume this web service from a J2ME app. I wrote in the J2ME help that is impossible because it supports the "document/literal" style. How can i call this methods? Is it possible?
    Thanks.
    Bruno

    Rajesh -
    Thanks, that is what I was looking for. Do you know if the sample client
    code follows JAX-RPC? Or is this special API developed for Workshop web
    services?
    Thanks,
    Pat
    "Rajesh Mirchandani" <[email protected]> wrote in message
    news:[email protected]..
    If you look into the test view you will find a link for a java proxy(click the
    "overview" tab and the the "Java Proxy" tab.). If you copy and paste thatcode
    into a java client or a servlet you should be able to invoke the webservice.
    >
    Let me know if you need an example.
    Pat Regan wrote:
    It seems to me that, under the hood, a session bean is always the first
    component called in a Workshop created web service. If this is the
    case,
    then would a Java client always use the JAX-RPC api to call it? Evenfor an
    asynchronous web service? Does anyone have an example Java Client that
    invokes a Workshop created web service?
    Thanks,
    Pat--
    Rajesh Mirchandani
    Developer Relations Engineer
    BEA Support

  • Runtime error with doc/lit style web services

    I've written a web service client (wrapped doc/lit style) and when I try to invoke the service, I get the following runtime error. I see some have reported the same error before and I don't see a resolution for the issue. Any help to resolve the issue is appreciated.
    My environment:
    Standalone web service client
    JARs used from JDEV 10.1.2
    Java 1.4.2
    I verified there are no duplicate implementations of the DOM Parser; I just use xmlparserv2.jar
    Exception in thread "main" java.lang.AbstractMethodError: oracle.xml.parser.v2.X
    MLElement.getNamespaceURI()Ljava/lang/String;
    at org.apache.soap.util.xml.DOM2Writer.print(DOM2Writer.java:139)
    at org.apache.soap.util.xml.DOM2Writer.serializeAsXML(DOM2Writer.java:98
    at org.apache.soap.Utils.marshallNode(Utils.java:109)
    at org.apache.soap.Body.marshall(Body.java:165)
    at org.apache.soap.Envelope.marshall(Envelope.java:203)
    at org.apache.soap.Envelope.marshall(Envelope.java:161)
    at oracle.soap.transport.http.OracleSOAPHTTPConnection.send(OracleSOAPHT
    TPConnection.java:664)
    at org.apache.soap.messaging.Message.send(Message.java:125)
    at emgateway.main.EMWSStub.sendRequest(EMWSStub.java:106)

    Hi John,
    Yes this is certainly possible. The role of client, server and service
    gets blurred when dealing with multiple web services. For an example,
    you can take a look at the work done by WS-I for the sample application
    [1], where multiple types of web services communicate with each other.
    Regards,
    Bruce
    [1]
    http://www.ws-i.org/SampleApplications/SupplyChainManagement/2003-12/SCMArchitecture1.01.pdf
    John Meiser wrote:
    >
    Can a doc-style Web Service invoke an RPC-Style Web Service? I know that we cannot
    mix RPC with Doc-style in the same Service, but I was wondering if RPC and Doc-style
    can call each other.
    Thanks,
    John

Maybe you are looking for

  • Choice of camera

    I have just purchased a 14" iBook, and am preparing to become active in video conferencing. I will probably be focusing on links in Russia (with broadband capacity), but there is no limit to the locations I will be working with. However, most of my c

  • Support_db column not there in fnd_nodes table

    Hi today I have did clone of 11.5.9 instance and face the below issue. Updating s_tnsmode to 'generateTNS' UpdateContext exited with status: 0 AC-50480: Internal error occurred: java.lang.Exception: Error while generating l istener.ora. Error generat

  • Echo in Cp5 upon replay

    When a project or slide with audio in it is played (whether upon publishing or preview) a distinct echo is heard and the audio volume dips by itself. This echo is not heard when the project or slide is played the first time. Have you noticed this ano

  • Grid value( Field J_3ASIZE ) in the report MB5T in SAP-AFS

    Hi How can i bring the Grid value ( Field J_3ASIZE ) in the report MB5T for particular STO in SAP-AFS industry solution. I tried in the layout but there are no such fields to bring in !! Help me out swiftly. cheers Maruthi Edited by: MARUTHI RAM on A

  • Opening New Tab utomatically directs to unwanted site like yahoo.

    When opening a new tab, the new tab automatically directs to a website such as Yahoo. This is an undesirable problem but may be useful to some who say always want to default new tabs to google or something else.