SAAJ API Web Services With Attachments

I have developed a Web Service and it is running successfully. Now I want to pass attachments to it in the form of SOAP Messages (using SAAJ API). I saw several examples on the web of how to create a request with a SOAP Message and include attachments/body parts in it. But what I cannot understand is how to recieve this message in my web service. I came across an example which used a servlet to recieve the message but I cannot understand how a servlet can be fitted between the web service and the request. I am new to Web Services in Java and would appreciate any help. A detailed tutorial would be great as to how to implement SOAPMessages receiver. I am using Eclipse with Tomcat.

hi berta,
http://help.sap.com/saphelp_nw04/helpdata/en/5e/ea656273b74cf386a1f29fc55721fd/frameset.htm
HTTP error 406 when consuming a Web Service with attachment
let me know u need any further info
bvr

Similar Messages

  • Consuming web services with Attachments

    Hello,
    I need to consume a web service with attachements (mime type) from sap was j2ee 7.0 (nw2004s).
    When I try to generate the web service deployable proxy using nwds (version 7.0.06), I get the following error message
    "Invalid WSDL or WSDL not found, please specify different WSDL.."
    Removing references to"wsi:swaRef" from wsdl, above error is not displayd and wsdl is correctly processed
    <complexType name="ArrayOf_tns2_swaRef">
    - <sequence>
      <element maxOccurs="unbounded" minOccurs="0" name="swaRef" nillable="true" type="wsi:swaRef" />
      </sequence>
      </complexType>
    Unfortunately, we have not been able to find any SAP documentation (online help, oss note,,,) describing if SAP WAS Java 7.0 supports this standard.
    Has anybody already worked with Web Services with attachments ?
    Thanks in advace,
    Regards
    Berta

    hi berta,
    http://help.sap.com/saphelp_nw04/helpdata/en/5e/ea656273b74cf386a1f29fc55721fd/frameset.htm
    HTTP error 406 when consuming a Web Service with attachment
    let me know u need any further info
    bvr

  • Web Services with Attachments

    Hello,
    I need to consume a web service with attachements (mime type) from sap was j2ee 7.0 (nw2004s).
    Unfortunately, we have not been able to find any SAP documentation (online help, oss note,,,) describing if SAP WAS Java 7.0 supports this standard, or how to generate ws proxies for consuming these web services.
    Has anybody already worked with Web Services with Attachments ?
    Thanks in advace,
    Regards
    Berta

    hi berta,
    http://help.sap.com/saphelp_nw04/helpdata/en/5e/ea656273b74cf386a1f29fc55721fd/frameset.htm
    HTTP error 406 when consuming a Web Service with attachment
    let me know u need any further info
    bvr

  • Web Service with attachments (SOAP with attachments) without PI

    Hi,
    Is it possible to send across file(say PDF) using ABAP web services. I know it can be done with Java using SOAP with attachments. Is something similar available for ABAP ? since if we transfer raw binary data as type string / xstring it may have a performance impact.
    I could not see any option for attachments when using web service wizard from SE37 / soamanager
    Note I am not using PI, this Web service would be consumed by a 3rd party tool. There is very little material available on transferring files using web service with SOAP attachments.
    Regards,
    Aditya

    Hi thanks for your input, but did you have to encode your binary data stream in say Base64 / utf-8 ? Also if you are transferring files in bulk(say 10 -100 files)  how does your web  service indicate end of one file or what is the best way so as to avoid performance problems.
    Regards,
    Aditya

  • Consuming Synchronous RESTful Web Service with PI

    Dear experts,
    i have a scenario for consuming RESTful web service.
    i have followed all the steps showed in the following link for configuring my interface.
    http://scn.sap.com/community/pi-and-soa-middleware/blog/2012/08/11/calling-synchronous-restful-web-service-with-pi--i
    but still i am facing issues at the communication channel level, the trace of the communication channel is as follows
    Error While Sending Message: Additional error text from response: com.sap.engine.interfaces.messaging.api.exception.MessagingException: org.apache.axis.ConfigurationException: adapter is null org.apache.axis.ConfigurationException: adapter is null at com.sap.aii.adapter.axis.modules.HandlerCore.process(HandlerCore.java:60) at com.sap.aii.adapter.axis.modules.HandlerBean.process(HandlerBean.java:86) at sun.reflect.GeneratedMethodAccessor602.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:47) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:50) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:37) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:21) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_MethodRetry.invoke(Interceptors_MethodRetry.java:46) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:191) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:23) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:25) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:17) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:138) at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:164) at com.sun.proxy.$Proxy3284.process(Unknown Source) at com.sap.aii.af.app.mp.ejb.ModuleProcessorBean.process(ModuleProcessorBean.java:264) at sun.reflect.GeneratedMethodAccessor544.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:47) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:50) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:37) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:21) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_MethodRetry.invoke(Interceptors_MethodRetry.java:46) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:191) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:23) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:25) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:17) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:138) at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:164) at com.sun.proxy.$Proxy646.process(Unknown Source) at com.sap.aii.af.app.listener.AFWListenerBean.onMessage(AFWListenerBean.java:422) at sun.reflect.GeneratedMethodAccessor558.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:47) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:50) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:37) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:21) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_MethodRetry.invoke(Interceptors_MethodRetry.java:46) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:191) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:23) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:25) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:17) at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179) at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:138) at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:164) at com.sun.proxy.$Proxy603.onMessage(Unknown Source) at com.sap.engine.messaging.impl.spi.ServicesImpl.deliver(ServicesImpl.java:362) at com.sap.aii.adapter.xi.ms.XIEventHandler.onDeliver(XIEventHandler.java:1091) at com.sap.engine.messaging.impl.core.queue.consumer.RequestConsumer.onMessage(RequestConsumer.java:75) at com.sap.engine.messaging.impl.core.queue.Queue.run(Queue.java:1017) at com.sap.engine.messaging.runtime.MSWorkWrapper.run(MSWorkWrapper.java:58) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:185) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:302)
    i have also attached screen shots of module tab of my SOAP(Axis) adapter
    regards,
    sushant

    Hi Sushant
    Check the question 11.I am getting org.apache.axis.ConfiguraitonException: adapter is null in this note 1039369 - FAQ XI Axis Adapter
    (you will find all the answers in the attachment section)
    Regards.

  • How can I create a Web Service with several classes

    Hello,
    I developed an API which I want to use to create a webService that offer an acces to all the classes and use all their methods.I tried this with Netbeans but I view that I will have a WSDL file for each class.
    But I have tested the yahoo api web service of the image search and it offer acces to several objects such us request and result.So I want to make a service that offer the use of several objects. Can I do this.If yes how ? Because I have read tutorials about WebServices and they mention that to create a webservice I must have an EndPoint class so only one class.
    Please I juste began with webservices so I don't know how to do.
    Thanks in advance.

    I don't believe this is possible when starting from Java. I think you need to start with a WSDL to get this to work. I am curious as to why having multiple WSDLs is an issue, would you care to eloborate.
    Thanks

  • Anybody has experience calling ID API web service in Java

    Hello,
    as you know we can programmatically update ID objects by call ID APIs (web service). To do that you need to import the wsdl into a java project, generate web service client and call the client to update ID objects.
    I've tried this in NWDS CE version. However I got error when generating web service client from the wsdl of the ID web service. Only the BusinessComponentService passed the ws client genertion, the rest web services do not work.
    The error I got:
    IWAB0399E Error in generating Java from WSDL:  java.lang.NullPointerException
        java.lang.NullPointerException
        at org.apache.axis.wsdl.toJava.JavaInterfaceWriter.writeOperation(JavaInterfaceWriter.java:126)
    Anybody has experience with ID API?
    Thanks
    Jayson

    HI Jayson,
    you can also request the web service directly.
    For example, you could create a local xml file with the values you want to pass to the web service and configure a file 2 soap scenario within XI itself.
    You can create interfaces for each available web service.
    You could call this scenario "ID objects generator" or something and save the .tpz for the repository objects of this scenario, since you could reuse it in other projects.
    Other than that, in Teched '08, Bill Li showed a lot of proxies developed over Java to consume the ID API web services, and they all seemed to work ok. However I do think he used NW Developers Studio 7.0 (2004s), not CE.
    I'd raise an OSS msg with SAP in order to check the problem you're getting.
    Regards,
    Henrique.

  • How to use web services with Dynamic url behaviour

    Hi,
    IView created by me currently uses some web services whose url behavior is static but i want to give a dynamic url behavior. i.e. i want to use the url which user provides. So here are my questions
    1. How I shall assign the url supplied by the user to IView?
    2. If I want to set some config variables during runtimes how I shall do it?
    Thanks in advance,
    Vishvesh

    Hi,
    1. I'm guessing you mean the webservice's url the user provides is pointing to an identical webservice to what you used to create your proxy... otherwise I think it will be very hard to do (I can imagine creating the proxies using the wsdl tool in run time or using code dome.. but that can't be what you want, right?).
    So if what you wanted is to use the same web service with a different url, then the web service's proxy class you created has API for doing this in code! (it inherits it)
    2. you can't, simply since the portal application doesn't ever use the config file... it isn't even deployed to the portal... so dynamic properties are "out of the question" here, sorry... see 1 again
    Regards,
    Ofer

  • Building client proxies for web services with SOAP attachemtns

    Hi all.
    I'm currently building a series of web services that take SOAP attachments as
    input, but I am unable to generate the java proxies for testing the services via
    WebLogic Workshop 8.1. When I attempt to build the proxy, I get the following
    error:
    Warning: Failed to generate client proxy from WSDL definition for this service.
    Suggestion: Please verify the <types> section of the WSDL.
    Is there something I need to alter to get this to work, or does workshop not support
    client proxies for web services with DataHandler parameters?
    Thanks.
    -Brian

    Thanks for the help. This is my first web service with SOAP attachments, so it
    may have been a long time till I realized that.
    -Brian
    "Michael Wooten" <[email protected]> wrote:
    >
    Thanks Brian,
    The problem is that you are trying to use the "document" soap-style :-)
    If you change this to "rpc", you'll should be able to successfully generate
    the
    client proxy jar. The soap-style property, is at the bottom of the "protocol"
    property sheet section, for the JWS.
    Regards,
    Mike Wooten
    "Brian McLoughlin" <[email protected]> wrote:
    Sure, sorry about that. Attached is the wsdl for a sample web service
    I created
    just to test the proxy generation.
    "Michael Wooten" <[email protected]> wrote:
    Hi Brian,
    Would it be possible for you to post the WSDL, so we can see what might
    be causing
    the problem?
    Regards,
    Mike Wooten
    "Brian McLoughlin" <[email protected]> wrote:
    Hi all.
    I'm currently building a series of web services that take SOAP attachments
    as
    input, but I am unable to generate the java proxies for testing theservices
    via
    WebLogic Workshop 8.1. When I attempt to build the proxy, I get the
    following
    error:
    Warning: Failed to generate client proxy from WSDL definition for
    this
    service.
    Suggestion: Please verify the <types> section of the WSDL.
    Is there something I need to alter to get this to work, or does workshop
    not support
    client proxies for web services with DataHandler parameters?
    Thanks.
    -Brian

  • Accessing IRM Web Services with Coldfsuion

    We are looking to use the IRM web services with Coldfusion. Coldfusion abstracts Web Services calls through Java calls to the point of just setting up structures and calling the functions.
    My question is about the process for building the correct parameters for the IRM services. I have the JDeveloper examples working but I can't make enough sense of what is goin on through all the calls to build the proper information.
    What I don't understand yet are things like where do I get the server key and at what point do I authenticate? Do I need to do separate calls for these things.
    I've captured a soap transaction for the update user example in JDeveloper and see there is a serverKey but no other authentication. Is this all I need?
    The web services documentation mentions authentication needs to be basic authentication. Other than that there is not more info. Is there any other source of info?

    Hi
    Sorry, things are a bit confused when it comes to Web Services (WS) documentation. At the moment (in 10g), it's mixed up with the older stuff in the Component API Help file. Also, apart from a few snippets and the JDeveloper examples, there is no WS sample code. We hope to address this in 11g.
    The web services required HTTP basic authentication details to be set before the call is invoked. This will be the username and password of the sealing user, so that user will need to be configured to use Standard Auth, rather than NT Auth. How to set this depends on the web service stack used on the client, but with JAX-RPC there are APIs that allow the user name and password to be specified. e.g.
    +// User name for authentication purposes+
    contextServices._setProperty(javax.xml.rpc.Stub.USERNAME_PROPERTY,args[1]);
    +// Password for authentication purposes+
    contextServices._setProperty(javax.xml.rpc.Stub.PASSWORD_PROPERTY,args[2]);
    This snippet is in the Help file under the header "Authentication", or directly via:
    mk:@MSITStore:C:\Program%20Files\SealedMedia\Enterprise%20APIs%20SDK\Components%20SDK\Docs\smcomponents.chm::/ws_documentation_authentication.htm
    As for the Server Key, each IRM Server has a unique UUID value. The easiest way to get this is to call the following web service method on the “ServerServices” web service port.
    LicenseServer_ref reference = serverServices.getLicenseServerReference();
    System.out.println(reference.getServerKey());
    One you’ve obtained this it will never change (for the server you are using) and can be cached or stored for all future web service calls.
    I think you need to have the auth properties set, and the Server Key handy, for most WS methods to work, but I don't think it matters in which order you get them.
    Hope this helps,
    David

  • Web services with controls

    hi im trying to create a web service with this VI in the atachment, i tested the add example avaible in NI site and works fine, now i want to build a client that access the vout control, but when i launch this adress http://localhost/tzidws/add/5 the browser doenst show the xml code that i was expecting, it just keep saying waiting for localhost, am i doing samething wrong?
    Márcio Ngolo 
    P.S.- Im using full labview 8.6
    Attachments:
    TZIDWrite.vi ‏22 KB
    information.jpg ‏82 KB
    urlmappings.jpg ‏84 KB

    helloYann how are u tanks for answer-me, my intensions is to create a webservive using labview and PHP, i created a vi to control a positioner, the vi (tzidwrite.vi) control the positioner openning or closing the positioner, to do that all i did is give a tension value to the input of the positioner using labview and a SCB-68 aquisition board, the values of tension varies from 0v (totally closed) to 10v(totally open), the vi works fine and all system works fine, what i need now is to transform this vi into a web service, i follow the instructions in the help of labview 8.6 and i was expecting to see the XML web page in order to be able to control my positioner just changing the values of the tension in the vi webservice, but i believe im not doing the url mapping the right way, im sending the project files for verification.
    Attachments:
    TZID.zip ‏230 KB

  • Preparations to learn Web Services with Java

    I have only worked with JSP,JDBC, JavaBeans and Servlets in Tomcat using MVC architecture the past couple years. I have never used Struts framework. I am thinking about taking a Web Services with Java course and was wondering if my background will be enough to keep up with the advance topic of Java web service?

    Yes, at first you should have to worry about understanding the basic concepts, WSDL, and a little bit of XML (it does not make very senso to study far too much because sometimes you won't use all the api you may study).
    The focus point is understanding that you can build a web service infrastructure passing using many different approaches: starting from wsdl, starting from java, based on WSDL, based on REST and things like that.
    JAX-WS is a very powerful toolkit that covers well all the possible approaches you may have.
    Anyway starting from scratch is quite frustrating... it is difficult to find around a good guide that covers all the aspects and make you understand the Big Picture. That's really the focus point.
    There is a very good book about written by Mark Hansen.
    Check out also that there are so many franmeworks around that implements the specification: almost every Corp. implements its own stack.... Sun, Apache, Spring, IBM, JBOSS and so on.
    This is quite misleading at first.
    Metro is very good and very well implemented with netbeans, and it's easier to start with it. anyway it hides you sometimes what's going on underneath.
    I find CXF is a very good framework, and if you love the SPring wayyou should consider give it a chance.
    I have no experience of other frameworks.

  • Create Web Service with Function Group

    Hi experts,
    I have 2 question for web service
    1- i want to create web service with function group. My function group is have 2 function modules. I selected function group for web service end point type. And next action i want to select my function group but this is impossible. Because this field is inaktive for value entry. (Img1) How can i make to active this field?
    2- I'm created one bussinness object in SWO1. And assigned ZBAPI... this object. (API METHOD ->ADD METHOD menu). I'm changed oject type's statu for released and created this object. Everything is ok so i can test this object and run ZBAPI method. But i can not see this object type in BAPI transaction. Why i can not see in BAPI transaction my object type ?
    Thank you for your help.

    /bump

  • Issue with OSI PI WCF Web Service with wshttpbinding

    Hi Experts,
    System Details:
    SAP MII 14 SP4
    OSI PI Web Service: PITimeSeries
    I am having issue when trying to call OSI PI web service using http post. it is returning status 0 when i am using exception handler in BLS.
    Same web service works fine with basichttpbinding (SOAP 1.1)  but with wshttpbinding (SOAP 1.2) it is giving error.
    Following are Web config binding details for web service.
          <wsHttpBinding>
            <binding name="wsBinding_2011" sendTimeout="00:01:00" receiveTimeout="00:10:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
              <reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false" />
              <security mode="Message">
                <message clientCredentialType="Windows" negotiateServiceCredential="true" algorithmSuite="Default" establishSecurityContext="true" />
              </security>
            </binding>
          </wsHttpBinding>
    I am not sure it could be the issue with passing windows credentials.
    Did anybody consumed WCF web service with wshttpbinding with security mode as Message and clientCredentialType as Windows.
    Also i was trying to pass MYSAPSSO2 SSO token to service in http post but first i am not sure if this is correct windows token and second which header property of service should be mapped and i am not sure that I am going into correct direction or not.
    Please let me know what i am missing.
    I have tried following other options and tools:
    SOAP UI: basichttpbinding works fine for wshttpbinding receiving Internal Server error in log and Response as
                      The security context token is expired or is not valid.
    MII Web Service Action Block: basichttpbinding works fine for wshttpbinding not able to configure url through wizard because as per                                                                              my discussion with other MII experts MII does not support SOAP1.2. that is one reason for using http post.
    WCF Storm: both bindings works fine (There is option to select windows authentication and Impersonation level as delegation)
    WCF Test Client: Both bindings works fine
    Any help is appreciated.
    Thanks & Regards,
    Manoj Bilthare

    Hi Sam,
    The web service is valid following are details of testing on various tools.
    SOAP UI: basichttpbinding works fine for wshttpbinding receiving Internal Server error in log and Response as The security context token is expired or is not valid.
    MII Web Service Action Block: basichttpbinding works fine for wshttpbinding not able to configure url through wizard because as per my discussion with other MII experts MII does not support SOAP1.2. that is one reason for using http post.
    WCF Storm: both bindings works fine (There is option to select windows authentication and Impersonation level as delegation)
    WCF Test Client: Both bindings works fine
    Please let me know if additional details required.
    Thanks & Regards,
    Manoj Bilthare

  • Calling Web Service with SOAP header from BPEL

    Hi,
    I am calling a web service (with header information) from BPEL. In the Invoke activity, i created a header variable to pass the header information.
    But, when i test the BPEL service, invoke activity fails because the header information is not being passed.
    Below is the error message (copied from clipboard).
    +<messages><input><Invoke_1_getsubinfo_InputVariable><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="parameters"><getsubinfoElement xmlns="http://ws/its/tabs/webservices/SingleRowWS/SingleRowWS.wsdl">+
    +<pSubnoin>+
    +<insubno>12345678</insubno>+
    +</pSubnoin>+
    +</getsubinfoElement>+
    +</part></Invoke_1_getsubinfo_InputVariable></input><fault><bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>exception on JaxRpc invoke:+
    start fault message:+
    Internal Server Error (Caught exception while handling request: javax.xml.rpc.JAXRPCException: Not authenticated user)+
    *:end fault message*</summary>
    +</part></bindingFault></fault></messages>+
    As said, no header information is visible in the Invoke activity.
    Please provide help for the above issue.
    -MJ

    Hello Patrick,
    Thanks for the response. I am using normal assign activity to assign values to the header variable as shown below. HeadMT is the header variable which is passed in the invoke activity.
    +<assign name="Assign_Header">+
    +<copy>+
    +<from expression="'tkl12'"/>+
    +<to query="/ns1:LOGIN_INFO/ns1:USER_NAME" variable="*HeadMT*"+
    part="payload"/>
    +</copy>+
    +<copy>+
    +<from expression="'tkl123'"/>+
    +<to query="/ns1:LOGIN_INFO/ns1:PASSWORD" variable="*HeadMT*"+
    part="payload"/>
    +</copy>+
    +<copy>+
    +<from expression="'TKL'"/>+
    +<to query="/ns1:LOGIN_INFO/ns1:CHANNEL_ID" variable="*HeadMT*"+
    part="payload"/>
    +</copy>+
    +</assign>+
    The expected input by the web service is as below with the header information highlighted.
    +<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://ws/webservices/RowWS/RowWS.wsdl">+
    +*<soap:Header>*+
    +*<ns1:LOGIN_INFO>*+
    +*<ns1:USERNAME>tkl12</ns1:USERNAME>*+
    +*<ns1:PASSWORD>tkl123</ns1:PASSWORD>*+
    +*<ns1:CHANNEL_ID>TKL</ns1:CHANNEL_ID>*+
    +*</ns1:LOGIN_INFO>*+
    +*</soap:Header>*+
    +<soap:Body>+
    +<ns1:substatusElement>+
    +<ns1:pInparam>+
    +<ns1:insubno>7674988</ns1:insubno>+
    +</ns1:pInparam>+
    +</ns1:substatusElement>+
    +</soap:Body>+
    +</soap:Envelope>+

Maybe you are looking for

  • Windows7 recovery

    hp pavilion dv6 7023 laptop with win7 preinstalled. while upgrading to win 8.1 pro through usb when it asks for the hard disk partition to install windows to..as i select any of my partition it gives error that windows cannot be installed on this par

  • How can i erase my ical in lion?

    I am having major issues with my iCal. it has created 500 to 1000 duplicates on some days, and i would like to wipe the entire calendar and start from scratch. Can anyone help me????

  • Less roundabout keySet filter for keys

    Hi, I'm attempting to use a filter to query keys in a partitioned cache that match a certain class type. keySet() by default appears to return to the filter the values of the entry. The same appears true of entrySet() as well. I want my filter to eva

  • HELP my kid stuck in iMac install disc in pre-Intel Mini...frozen!

    My kids inserted the iMac Intel OSX.4 disc into my mini and began install! Now the thing is giving me an error message and I cannot eject disc or start it! Anyone know how to get a disc out when the OS isn't booting? The DVD is not compatible since i

  • Mail server cannot use certificate because.. the filename is too long ?

    Hi, For some reasons, yesterday, I created a new certificate on our server (XServe with Mac OSX Server 10.6.2) and I assigned this certificate to the mail server. Since then, we are not able to connect to our mail server. We receive an error saying t