Http header expect:100-continue

I am trying to make a HTTP PUT request to a webservice, which I can't get to work because it keeps returning the following error in its header: HTTP/1.1 417 Expectation Failed
In the body it explains that I have a header "expect:100-continue" in my PUT request header (see image). 
I have tried everything to remove that particular header from my request (using LabviewHTTPclient.lvlib:removeheader.vi), but Labview still sends it.
2 questions:
- Is there a tool that lets me see what header/request labview actually sends to the webservice?
- how come I can't remove that header?
Thanks for your input!
BTW. I got it working in Curl, which I believe is used by Labview itself as well
Attachments:
Error 417 Expectation Failed.png ‏8 KB

Hello Aartjan,
About the tool:
You could use wireshark (just an example).
About the header part:
Can you share your code or a simplification of it (Project and files [vi's..]) that allows me to test/reproduce/see what's going on?
To know what causes the issue we need to see your code.
Kind Regards,
Thierry C - Applications Engineering Specialist Northern European Region - National Instruments
CLD, CTA
If someone helped you, let them know. Mark as solved and/or give a kudo.

Similar Messages

  • OSB HTTP Header "Expect: 100-Continue"

    Hello!
    Client (.Net) call web-service on osb (ProxyService).
    Http request have header "Expect: 100-Continue".
    This request "freeze" the server and bus don't send response.
    How it fix?
    OSB 11g, WebLogic 10.3.3
    Thanks

    I can't change client side.
    Server log:
    <Notice> <Diagnostics> <LAM-ESB> <AdminServer> <[STANDBY] ExecuteThread: '28' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <f3cc0ecdd0498662:-6b8c6571:12b81234e70:-7ff1-0000000000000260> <1286367032826> <BEA-320068> <Watch 'StuckThread' with severity 'Notice' on server 'AdminServer' has triggered at 06.10.2010 16:10:32 MSD. Notification details:
    WatchRuleType: Log
    WatchRule: (SEVERITY = 'Error') AND (MSGID = 'BEA-000337')
    WatchData: DATE = окт 6, 2010 4:10:31 PM MSD SERVER = AdminServer MESSAGE = [STUCK] ExecuteThread: '23' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "645" seconds working on the request "weblogic.servlet.internal.ServletRequestImpl@5e3e203[
    POST /LAM_ESB/ProxyServices_v1/ReportServiceWS HTTP/1.1
    SOAPAction: http://lam.org/esb/report/v1/SaveReportParameters
    Content-Type: text/xml
    Content-Length: 595
    Expect: 100-continue
    Connection: Keep-Alive
    ]", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:
    Thread-141 "[STUCK] ExecuteThread: '23' for queue: 'weblogic.kernel.Default (self-tuning)'" <alive, suspended, priority=1, DAEMON> {
        weblogic.xml.query.tokens.common.BEA_PIToken.create(BEA_PIToken.java:32)
        weblogic.xml.query.tokens.BasicTokenFactory.createPI(BasicTokenFactory.java:769)
        weblogic.xml.query.tokens.BasicTokenFactory.createPI(BasicTokenFactory.java:730)
        weblogic.xml.query.parsers.StAXCursorAdaptor$LiteToken.next(StAXCursorAdaptor.java:257)
        weblogic.xml.query.parsers.StAXCursorAdaptor.fetchNext(StAXCursorAdaptor.java:103)
        weblogic.xml.query.iterators.GenericIterator.next(GenericIterator.java:102)
        com.bea.wli.common.xquery.iterators.DocumentFilterIterator.fetchNext(DocumentFilterIterator.java:57)
        weblogic.xml.query.xdbc.iterators.DefaultTokenIterator.next(DefaultTokenIterator.java:112)
        com.bea.wli.common.xquery.iterators.ExpandTopLevelFullNodes.fetchNext(ExpandTopLevelFullNodes.java:36)
        weblogic.xml.query.xdbc.iterators.DefaultTokenIterator.next(DefaultTokenIterator.java:112)
        com.bea.wli.sb.context.SoapEnvelopeBodySource.skipToBodyAndValidate(LargeSOAPMessageImpl.java:827)
        com.bea.wli.sb.context.SoapEnvelopeBodySource.<init>(LargeSOAPMessageImpl.java:777)
        com.bea.wli.sb.context.BindingOperationMapper$OptimizedQNameMapper.computeOperationName(BindingOperationMapper.java:524)
        com.bea.wli.sb.context.OperationVariable.getTypedValue(OperationVariable.java:40)
        com.bea.wli.sb.context.MessageContextImpl.getOperation(MessageContextImpl.java:165)
        com.bea.wli.sb.context.BindingLayerImpl.addRequest(BindingLayerImpl.java:221)
        com.bea.wli.sb.pipeline.MessageProcessor.processRequest(MessageProcessor.java:39)
        com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:593)
        com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:591)
        weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:350)
        weblogic.security.service.SecurityManager.runAs(SecurityManager.java:143)
        com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
        com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:572)
        com.bea.wli.sb.transports.TransportManagerImpl.receiveMessage(TransportManagerImpl.java:252)
        com.bea.wli.sb.transports.http.generic.RequestHelperBase$1.run(RequestHelperBase.java:154)
        com.bea.wli.sb.transports.http.generic.RequestHelperBase$1.run(RequestHelperBase.java:152)
        weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:350)
        weblogic.security.service.SecurityManager.runAs(SecurityManager.java:143)
        com.bea.wli.sb.transports.http.generic.RequestHelperBase.securedInvoke(RequestHelperBase.java:146)
        com.bea.wli.sb.transports.http.generic.RequestHelperBase.service(RequestHelperBase.java:72)
        com.bea.wli.sb.transports.http.wls.HttpTransportServlet.service(HttpTransportServlet.java:106)
        weblogic.servlet.FutureResponseServlet.service(FutureResponseServlet.java:24)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:815)
        weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:224)
        weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:108)
        weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:206)
        weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:183)
        weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.doIt(WebAppServletContext.java:3656)
        weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3650)
        weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:308)
        weblogic.security.service.SecurityManager.runAs(SecurityManager.java:117)
        weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2204)
        weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2126)
        weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1412)
        weblogic.work.ExecuteThread.execute(ExecuteThread.java:198)
        weblogic.work.ExecuteThread.run(ExecuteThread.java:165)
    SUBSYSTEM = WebLogicServer USERID = <WLS Kernel> SEVERITY = Error THREAD = [ACTIVE] ExecuteThread: '22' for queue: 'weblogic.kernel.Default (self-tuning)' MSGID = BEA-000337 MACHINE = LAM-ESB TXID =  CONTEXTID = f3cc0ecdd0498662:-6b8c6571:12b81234e70:-7ff1-000000000000025e TIMESTAMP = 1286367031998 
    WatchAlarmType: AutomaticReset
    WatchAlarmResetPeriod: 600000
    >Thanks

  • XSQLPages does not handle 'Expect: 100-continue'

    I am running Jigsaw2.0.5 (from W3C) and XSQLPages1.0.2. When posting messages using libWWW (from W3C), an 'Expect: 100-continue' is included in the HTTP/1.1 header allowing the server to respond with a '100-continue' before the body of the message is sent.
    However, it looks like XSQLPages is ignoring the 'Expect: 100-continue' request and tries to complete the 'xsql:insert-request' without the posted XML document.

    Yes, I am referring to section 8.2.3 of rfc2616.
    As I understand it, the reason for sending 'Expect: 100-continue', is to allow the server (i.e. XSQLPages) to reject the body of the message based on information in the header (Content-Type, Content-Length, etc.) BEFORE the body is sent/received. This will speed up the response time in case of a reject.
    Our application (server) does not really care about this. We have written test code that passes the header and the body in one go and that works OK. However, a customer interfacing to our server is experiencing problems, because they use libWWW to post on our server. Since libWWW breaks up the body and the header, their client does not work against our server.
    BTW: The server mentioned above is part of a IP Telephony solution (not wireless clients).

  • Problem about "Expect: 100-continue"

    Hi,
    I recently konw that Sun Java System Webserver doesn't respond "Expect: 100-continue" of request header.
    I tried something like below.
    ================ [Web Logic Plug-in] ================
    ----- [Web Server 6.0 sp8] -----
    telnet localhost 92
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.
    POST /HelloJSP/HelloJSP.jsp?numtimes=3 HTTP/1.1
    Expect: 100-Continue
    Content-Length: 280
    Host: EAI:92
    HTTP/1.1 100 Continue <----------------------------- 100 continue
    Connection closed by foreign host.
    ----- [Web Server 6.1 sp4] -----
    telnet localhost 83
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.
    POST /HelloJSP/HelloJSP.jsp?numtimes=3 HTTP/1.1
    Expect: 100-Continue
    Content-Length: 280
    Host: EAI:83
    HTTP/1.1 500 Server Error <-------------------------- 500 Server Error
    Server: Sun-ONE-Web-Server/6.1
    Date: Sun, 31 Oct 2004 01:50:41 GMT
    Content-type: text/jsp
    Transfer-encoding: chunked
    19
    HTTP/1.1 100 Continue
    ================ [Web Logic Not Plug-in] ================
    ----- [Web Server 6.0 sp8] -----
    telnet localhost 7890
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.
    POST /choi/HelloJSP.jsp?numtimes=3 HTTP/1.1
    Expect: 100-Continue
    Content-Length: 280
    Host: EAI:7890
    HTTP/1.1 200 OK <------------------------------------ 200 OK
    Server: Netscape-Enterprise/6.0
    Date: Sun, 31 Oct 2004 02:13:11 GMT
    Content-length: 141
    Content-type: text/html;charset=ISO-8859-1
    Set-cookie: JSESSIONID=sjs60-0%253A41844a19%253A4b78ebbde37542e;path=/
    <html>
    <head>
    <title>Hello JSP</title>
    </head>
    <body>
    Hello, World!<br>
    Hello, World!<br>
    Hello, World!<br>
    </body>
    </html>
    Connection closed by foreign host.
    ----- [Web Server 6.1 sp4] -----
    telnet localhost 84
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.
    POST /HelloJSP/HelloJSP.jsp?numtimes=3 HTTP/1.1
    Expect: 100-Continue
    Content-Length: 280
    Host: EAI:84
    HTTP/1.1 200 OK <------------------------------------ 200 OK
    Server: Sun-ONE-Web-Server/6.1
    Date: Sun, 31 Oct 2004 02:07:55 GMT
    Content-type: text/html;charset=ISO-8859-1
    Set-cookie: JSESSIONID=E3ACEFCBB553E20E567D65A697D4F057;Path=/
    Transfer-encoding: chunked
    008e
    <html>
    <head>
    <title>Hello JSP</title>
    </head>
    <body>
    Hello, World!<br>
    Hello, World!<br>
    Hello, World!<br>
    </body>
    </html>
    0
    I think that Sun Java System Web Server 6.0 and 6.1 don't respond "HTTP/1.1 100 Continue" but just pass it from WebLogic.
    And I found 500 Error is responsed on Sun Java System Webserver6.1 .
    Is there anybody knows about this problem?
    How can I set the Web Server to response "HTTP/1.1 100 Continue" message and to solve 500 Error?

    See the poster's revised post:
    http://swforum.sun.com/jive/thread.jspa?threadID=58470

  • HTTP/1.1 100 Continue from PTWC 3.0

    Hi all
    We are getting the string "HTTP/1.1 100 Continue" appearing every so often after a PTWC 3.0 postback .. it doesn't seem to have any detrimental affect on the app but it's a little confusing to end users.
    Has anyone else experienced this? We'd like to know why it's occuring and what we can do about it
    thanks in Advance
    Simon

    Here's the bug info and resolution stuff via patch.
    Microsoft bug, makes all our lives that much harder.
    http://support.microsoft.com/default.aspx?scid=kb;en-us;898708&sd=rss&spid=2097
    (Article ID: 898708):
    SYMPTOMS
    When you send a POST request to a server that is running Microsoft Internet Information Services (IIS) 6.0, IIS may send an "HTTP 100 Continue" response in the middle of the response stream. IIS sends the "HTTP 100 Continue" response after IIS has sent the “HTTP 200 OK” response."
    Here is a link to another interesting article:
    http://haacked.com/archive/2004/05/15/http-web-request-expect-100-continue.aspx

  • HTTP Header not showing up

    I am trying to add a authorization header to the HTTP Post, but it isn't showing up when my end point is https. It only shows up when my end point is http.
    This is how my header is supposed to look like, but it only works when my end point is http.
    Content-Type: text/xml
    Authorization: Basic TWFyc2hmaWVsZDoidzMrJTFAJjJpIUk2
    User-Agent: Microsoft (R) BizTalk (R) Server 2010
    Host: ***.***.***
    Content-Length: 54091
    Expect: 100-continue
    What should I do for this to show up with my https end point ?
    I am using HTTP Adapter and I am trying to write authorization header using:
    inmsg.Context.Write("UserHttpHeaders", "http://schemas.microsoft.com/BizTalk/2003/http-properties", "Authorization: Basic " + System.Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(Username + ":" + Password)));
    EDIT: I am using HTTP Adapter to accomplish this.

    HTTP data packet/conversation is exactly same with
    HTTP or HTTPS. Only difference is they are encrypted in HTTPS. May since they are encrypted you are not seeing the exact word “Authorization: Basic…” when you search for this text/string.
    If this answers your question please mark it accordingly. If this post is helpful, please vote as helpful by clicking the upward arrow mark next to my reply.

  • WSRP Consumer - producer registration error : (100)continue return code

    I am trying to get an ALI WSRP Consumer working with the ALI WSRP Producer. Whenever I try to register the producer wsdl, the consumer fails with the error :
    Failed to get a service description from WSRP provider!
    Error message from WSRP provider: (100)Continue
    Any clues? I can successfully register this producer with a different portal's consumer. Is there a configuration property that needs to be set to allow the (100) response code? Or perhaps my Producer should avoid that response code in the first place? Has anybody run into this?
    Below is the stack trace generated by my consumer on the back-end (from ALI Logging Spy) :
    Failed to get service description from WSRP provider: http://scollins.sd.defenseweb.net:80/wsrpproducer1.1/1.0/WSRPBaseService.asmx
    AxisFault
    faultCode: {http://xml.apache.org/axis/}HTTP
    faultSubcode:
    faultString: (100)Continue
    faultActor:
    faultNode:
    faultDetail:
         {}string: return code: 100
    HTTP/1.1 200 OK
    Server: Microsoft-IIS/5.1
    Date: Wed, 22 Apr 2009 23:31:53 GMT
    X-Powered-By: ASP.NET
    Connection: close
    X-AspNet-Version: 2.0.50727
    Cache-Control: private, max-age=0
    Content-Type: text/xml; charset=utf-8
    Content-Length: 3084
    &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;&lt;soap:Envelope xmlns:soap=&quot;http://schemas.xmlsoap.org/soap/envelope/&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot; xmlns:wsa=&quot;http://schemas.xmlsoap.org/ws/2004/03/addressing&quot; xmlns:wsse=&quot;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd&quot; xmlns:wsu=&quot;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd&quot;&gt;&lt;soap:Header&gt;&lt;wsa:Action&gt;urn:oasis:names:tc:wsrp:v1:getServiceDescriptionResponse&lt;/wsa:Action&gt;&lt;wsa:MessageID&gt;uuid:dc3a3069-320a-4a6d-a997-45313098bc00&lt;/wsa:MessageID&gt;&lt;wsa:RelatesTo&gt;uuid:c827c145-c82d-4958-a201-30e7a86c053b&lt;/wsa:RelatesTo&gt;&lt;wsa:To&gt;http://schemas.xmlsoap.org/ws/2004/03/addressing/role/anonymous&lt;/wsa:To&gt;&lt;wsse:Security&gt;&lt;wsu:Timestamp wsu:Id=&quot;Timestamp-18d05f2a-c5dd-4519-8d1d-24b68f27b9e5&quot;&gt;&lt;wsu:Created&gt;2009-04-22T23:31:54Z&lt;/wsu:Created&gt;&lt;wsu:Expires&gt;2009-04-22T23:36:54Z&lt;/wsu:Expires&gt;&lt;/wsu:Timestamp&gt;&lt;/wsse:Security&gt;&lt;/soap:Header&gt;&lt;soap:Body&gt;&lt;getServiceDescriptionResponse xmlns=&quot;urn:oasis:names:tc:wsrp:v1:types&quot;&gt;&lt;requiresRegistration&gt;false&lt;/requiresRegistration&gt;&lt;offeredPortlets&gt;&lt;portletHandle&gt;simple&lt;/portletHandle&gt;&lt;markupTypes&gt;&lt;mimeType&gt;text/html&lt;/mimeType&gt;&lt;modes&gt;wsrp:edit&lt;/modes&gt;&lt;modes&gt;wsrp:help&lt;/modes&gt;&lt;modes&gt;wsrp:view&lt;/modes&gt;&lt;windowStates&gt;wsrp:maximized&lt;/windowStates&gt;&lt;windowStates&gt;wsrp:minimized&lt;/windowStates&gt;&lt;windowStates&gt;wsrp:normal&lt;/windowStates&gt;&lt;windowStates&gt;wsrp:solo&lt;/windowStates&gt;&lt;locales&gt;en&lt;/locales&gt;&lt;/markupTypes&gt;&lt;description xml:lang=&quot;en&quot;&gt;&lt;value&gt;Simple view portlet to test WSRP viewing&lt;/value&gt;&lt;/description&gt;&lt;shortTitle xml:lang=&quot;en&quot;&gt;&lt;value&gt;View&lt;/value&gt;&lt;/shortTitle&gt;&lt;title xml:lang=&quot;en&quot;&gt;&lt;value&gt;View Portlet&lt;/value&gt;&lt;/title&gt;&lt;displayName xml:lang=&quot;en&quot;&gt;&lt;value&gt;SimpleView&lt;/value&gt;&lt;/displayName&gt;&lt;userProfileItems&gt;UserProfileName/PropertyName&lt;/userProfileItems&gt;&lt;templatesStoredInSession&gt;true&lt;/templatesStoredInSession&gt;&lt;doesUrlTemplateProcessing&gt;true&lt;/doesUrlTemplateProcessing&gt;&lt;/offeredPortlets&gt;&lt;offeredPortlets&gt;&lt;portletHandle&gt;helloworld&lt;/portletHandle&gt;&lt;markupTypes&gt;&lt;mimeType&gt;text/html&lt;/mimeType&gt;&lt;modes&gt;wsrp:edit&lt;/modes&gt;&lt;modes&gt;wsrp:help&lt;/modes&gt;&lt;modes&gt;wsrp:view&lt;/modes&gt;&lt;windowStates&gt;wsrp:maximized&lt;/windowStates&gt;&lt;windowStates&gt;wsrp:minimized&lt;/windowStates&gt;&lt;windowStates&gt;wsrp:normal&lt;/windowStates&gt;&lt;windowStates&gt;wsrp:solo&lt;/windowStates&gt;&lt;locales&gt;en&lt;/locales&gt;&lt;/markupTypes&gt;&lt;description xml:lang=&quot;en&quot;&gt;&lt;value&gt;Hello world portlet to test WSRP viewing&lt;/value&gt;&lt;/description&gt;&lt;shortTitle xml:lang=&quot;en&quot;&gt;&lt;value&gt;View&lt;/value&gt;&lt;/shortTitle&gt;&lt;title xml:lang=&quot;en&quot;&gt;&lt;value&gt;Hello World Portlet&lt;/value&gt;&lt;/title&gt;&lt;displayName xml:lang=&quot;en&quot;&gt;&lt;value&gt;HelloWorld99&lt;/value&gt;&lt;/displayName&gt;&lt;userProfileItems&gt;UserProfileName/PropertyName&lt;/userProfileItems&gt;&lt;templatesStoredInSession&gt;true&lt;/templatesStoredInSession&gt;&lt;doesUrlTemplateProcessing&gt;true&lt;/doesUrlTemplateProcessing&gt;&lt;/offeredPortlets&gt;&lt;registrationPropertyDescription&gt;&lt;propertyDescriptions name=&quot;ConsumerName&quot; type=&quot;xsd:string&quot; /&gt;&lt;propertyDescriptions name=&quot;BuildDate&quot; type=&quot;xsd:dateTime&quot; /&gt;&lt;/registrationPropertyDescription&gt;&lt;/getServiceDescriptionResponse&gt;&lt;/soap:Body&gt;&lt;/soap:Envelope&gt;
    (100)Continue
         at org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java:695)
         at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:129)
         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.client.AxisClient.invoke(AxisClient.java:180)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2575)
         at org.apache.axis.client.Call.invoke(Call.java:2564)
         at org.apache.axis.client.Call.invoke(Call.java:2259)
         at org.apache.axis.client.Call.invoke(Call.java:2182)
         at org.apache.axis.client.Call.invoke(Call.java:1702)
         at com.plumtree.wsrp.base.WSRP_v1_ServiceDescription_Binding_SOAPStub.getServiceDescription(WSRP_v1_ServiceDescription_Binding_SOAPStub.java:857)
         at com.plumtree.wsrp.consumer.impl.ServiceDescriptionManager.getServiceDescription(ServiceDescriptionManager.java:118)
         at com.plumtree.wsrp.consumer.servlet.AdminPreference.renderSetRegistrationPage(AdminPreference.java:992)
         at com.plumtree.wsrp.consumer.servlet.AdminPreference.service(AdminPreference.java:117)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
         at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
         at java.lang.Thread.run(Unknown Source)

    This seemed promising, but the proposed solution (adding 'servicePointManager expect100Continue="false"' to Web.config) had no effect.
    My consumer request actually does not include the "Expect: 100-continue" header and receives the 100 response anyways. My understanding now is that this is okay (thought I'm not sure why) and that the client should be expected to handle that response code in any case.
    I am wondering if there is an issue with the combination of products in my environment that is not supported by this product?? I am using
    IIS 5.1,
    .Net 2.0
    AquaLogic WSRP Producer 1.1/WebCenter WSRP Producer 10.3.0 (tried both)
    I am testing this producer in two environments -
    - AquaLogic Consumer running on AL Portal 6.5. When the WSRPConsumer is configured with the producer wsdl, it fails with message "Failed to get service description from WSRP Provider: .... faultString: (100) Continue".
    - Liferay - AFTER successful registration, attempts to deploy my registered .Net portlet (simple hello-world) result in an internal exception thrown in the Producer [Bea.Portlet.Management.PortletManager.LoadPortlet(PortletManager.cs:line 114)] Error loading PortletContainer: Bad PortletState. No request is made to my .Net application.
    It appears from both of these tests that both my producer and consumer are having fundamental problems that do not seem overly exotic (although I have successfully registered other WSRP portlets with the AL Consumer). However, I have not come across much information on these sorts of problems.

  • Content-Type is net being set in HTTP header. Server returns 400 Bad Request error.

    Hi,
    I am trying to access an XML WebService. This service requires the content type of the request to be set to "text/xml". As you can see in the source code, I am setting the req.ContentType property to "text/xml".
    However, this content type seems not to be added to the HTTP headers. The server returns a 400 Bad Request error as can be seen in the log.
    I've attached a System.Net.trace log and it states:
    [Public Key]
    Algorithm: RSA
    Length: 2048
    Key Blob: 30 82 01 0a 02 82 01 01 00 bc 09 30 8a 1e 03 4d 7a ea 16 d3 a8 5e d8 5b 00 c4 8a c5 9f 26 bd 7d d6 cb 8b d0 db bd 93 2d 2b 3b 84 f6 20 79 83 34 67 51 37 21 ea 56 5e 18 d8 a3 db 72 43 0e 14 77 e2 64 cb 07 b6 2a 81 c7 f5 16 dd 19 c7 d9 68 0b 3a 81 5c f0 05 c9 ed 2b 37 00 31 41 37 8b 3a 73 4a 4d ab d7 d8 87 79 35 82 01 97 e3 3c be bb 84 e5 94 bb 87 52 e3 9f b5 fb 3e 33 38 c3 eb 73 42 ee ba 1e c5 4a 33 18 a1 0d 8a d2 10 a8 c5 3....
    System.Net Information: 0 : [26780] SecureChannel#31884011 - Remote certificate was verified as valid by the user.
    System.Net Information: 0 : [26780] ConnectStream#26966483 - Sending headers
    API-VERSION: 1
    Host: test.myhost.com
    Content-Length: 329
    Expect: 100-continue
    Connection: Keep-Alive
    System.Net Information: 0 : [26780] Connection#3888474 - Received status line: Version=1.1, StatusCode=100, StatusDescription=Continue.
    System.Net Information: 0 : [26780] Connection#3888474 - Received headers
    System.Net Information: 0 : [26780] Connection#3888474 - Received status line: Version=1.1, StatusCode=400, StatusDescription=Bad Request.
    System.Net Information: 0 : [26780] Connection#3888474 - Received headers
    0: Content-type
    1: text/xml
    X-Debug-Token: a810dc
    X-Debug-Token-Link: /service/_profiler/a810dc
    Connection: keep-alive
    Content-Length: 3440
    Cache-Control: no-cache
    Content-Type: text/html; charset=UTF-8
    Date: Tue, 14 Apr 2015 11:07:11 GMT
    Server: Apache
    ...and here's the implementation of the web request:
    private void ButtonSend_Click(object sender, EventArgs e)
    WebHeaderCollection whCol = new WebHeaderCollection();
    whCol.Add("API-VERSION", "1");
    //whCol.Add("Content-Type", "text/xml; charset=UTF-8"); <-- That doesn't work in .NET. Content-Type has to be set on the ContentType-Property
    string msg = _textBoxReq.Text;
    HttpWebRequest req = (HttpWebRequest)WebRequest.Create(_textBoxURL.Text);
    byte[] data = Encoding.UTF8.GetBytes(msg);
    req.Method = "POST";
    req.ContentType = "text/xml; charset=UTF-8";
    req.ContentLength = data.Length;
    req.Headers = whCol;
    req.GetRequestStream().Write(data, 0, data.Length);
    string xml = "";
    try
    using (HttpWebResponse resp = (HttpWebResponse)req.GetResponse())
    using (System.IO.StreamReader sr = new System.IO.StreamReader(resp.GetResponseStream()))
    xml = sr.ReadToEnd().Trim();
    catch (WebException we)
    using (System.IO.StreamReader sr = new System.IO.StreamReader(we.Response.GetResponseStream()))
    xml = sr.ReadToEnd().Trim();
    _textBoxRes.Text = xml;
    Can anyone help?
    Thanks,
    MiRi

    Hi _MiRichter,
    Well Done!
    Thank you very much for sharing the solution to us.
    Best Regards,
    Amy Peng
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Fault handler triggered for "100 Continue" messages from web service

    I'm using the Flex/Flash "WebService" class to connect to a .NET4 web service.
    Things always work fine unless the service sends a "100 Continue" message,
    (which it does seemingly at random, which is allowed by HTTP1.1).
    The problem is that Flex/Flash does not appear to handle this message.
    It triggers the fault handler with the following message:
    "SOAP Response cannot be decoded".
    The message body pulled from the Flash Builder's "Network Monitor" window (raw view) is:
    HTTP/1.1 100 Continue
    Server: ASP.NET Development Server/10.0.0.0
    Date: Tue, 21 Aug 2012 14:42:25 GMT
    Content-Length: 0
    If I understand correctly, any client using HTTP 1.1 should be able to handle "100 Continue" messages even if they didn't ask for them.
    Does anyone know what's going on here?
    Here are the software versions of everything involved:
    Flash plugin: 11.3.300.257 (ActiveX)
    Flash Builder: 4.6
    Flex Compiler SDK: 4.6.0
    OS: WinXP Pro, 32-bit, SP3
    Browser: IE 8.0.6001
    Web Service: .NET framework 4
    Any help/advice is greatly appreciated!!

    Update: The problem also occurs with Firefox 12 using the debug version of FlashPlayer 11.3.300.257, so I don't think it's a browser issue... Looks like Flash itself.

  • How to receive 100 Continue responses using HttpURLConnection

    Hi there,
    My server returns:
    HTTP/1.1 100 Continue
    Set-Cookie: Cookie1=Value1
    Server: Microsoft-IIS/5.0
    Date: Mon, 29 Sep 2000 18:34:02 GMT
    HTTP/1.0 200 OK
    Server: Server 2
    Set-Cookie: Cookie2=Value2
    Content-Type: text/html
    I'm using HttpURLConnection to get the response.
    I need to get both responses, however HttpURLConnection only returns the 200 OK response.
    How do I get the 100 Continue response using this class? I need it to retrieve the cookie.
    Thanks.

    You can't. If you check the j2se source code you will notice that sun.net.www.http.HttpClient just drops the '100 Continue' and waits for the actual response that follows.

  • OSB Http Transport Custom Authenticatiion (X509 in Http header)

    Hello!
    I'm trying to solve this case. We have F5 Load balancer that terminates SSL Connections From client to the OSB. When terminating the SSL, the LB adds the clients certificate into headers of the Http request going to OSB.
    OSb proxy service is configured to use custom authentication with token type X509 (only choice in the OSB console).
    What happens when I send the request to OSB, is that I get http code 401 (unauthorized) this error on server log:
    ####<Sep 27, 2011 3:08:05 PM EEST> <Error> <WliSbTransports> <appserver02> <MANSERV02> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1317125285598> <BEA-381327> <Transport-level custom token identity assertion failed
    java.lang.ClassCastException: java.lang.String cannot be cast to [Ljava.security.cert.X509Certificate;
    The HTTP header sent to OSB is in the messages below.
    It has also been wihotu the BEGIN CERTIFICATE and END CERTIFICATE lines with same results.
    Can somebody help me in:
    a) Should the certificate be sent in what form from LB to OSB.
    b) How should the OSB/WLS be configured for this to work?
    OSB version is 10.3.1.
    Request to the server is:
    POST /prjTemplateService/ProxyServices/psvcHelloWolrdWSSSLInterface HTTP/1.1
    Accept-Encoding: gzip,deflate
    Content-Type: text/xml;charset=UTF-8
    SOAPAction: "urn:#HelloWorldOperation"
    User-Agent: Jakarta Commons-HttpClient/3.1
    Host: <ip_here>
    Content-Length: 459
    SSLClientCertStatus: ok
    SSLClientCertb64: -----BEGIN CERTIFICATE-----
    MIICHDCCAYUCBE2sABcwDQYJKoZIhvcNAQEEBQAwVTELMAkGA1UEBhMCRkkxCzAJ
    BgNVBAgTAkZJMQ4wDAYDVQQHEwVFc3BvbzEMMAoGA1UEChMDRVpaMQswCQYDVQQL
    EwJUQzEOMAwGA1UEAxMFSnVzc2kwHhcNMTEwNDE4MDkxMDQ3WhcNMTEwNzI3MDkx
    MDQ3WjBVMQswCQYDVQQGEwJGSTELMAkGA1UECBMCRkkxDjAMBgNVBAcTBUVzcG9v
    MQwwCgYDVQQKEwNFWloxCzAJBgNVBAsTAlRDMQ4wDAYDVQQDEwVKdXNzaTCBnzAN
    BgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAvEPjEn3tvG3YuXlsLZnE7ZOKUJIF0Foy
    c1hp+k7dyGUoHu3Phva7eVOO1cmHaGkFHkg+EnnK3+/Y58EMQAEwPOfQTj0/vSSk
    cEx2X/2p2W7ACldJlYMxx2ZdFa1qaKTXtoieLy23/kJI+ZTfIoB+nmZiPRE9Hq8p
    LTPlcMWVFnkCAwEAATANBgkqhkiG9w0BAQQFAAOBgQC3EZMQieOy4PFh+95R6W7/
    3xaaRm/BzmEU/Wf9JweEwrnttdSmRKsxx9vSkADnD0J7jGO+koym5CWvJHbox4Sk
    QMRPFaTOBRD4hzZeJMidds1LSzUm/QE9PXzjS/HLSjBBs5DmZfdR+uXPSFqTROkd
    87R5veuPX5KeKQHs8iesTw==
    -----END CERTIFICATE-----
    SSLClientCertSN: 4d:ac:00:17
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:Hello:client">
    <soapenv:Body>
    <urn:HelloWorldRequest>
    <urn:FirstName>Jolly</urn:FirstName>
    <urn:Surname>Roger</urn:Surname>
    </urn:HelloWorldRequest>
    </soapenv:Body>
    </soapenv:Envelope>
    Response from OSB:
    HTTP/1.1 401 Unauthorized
    Connection: close
    Date: Fri, 30 Sep 2011 08:32:33 GMT
    Content-Length: 1518
    Content-Type: text/html
    X-Powered-By: Servlet/2.5 JSP/2.1
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Draft//EN">
    <HTML>
    <HEAD>
    <TITLE>Error 401--Unauthorized</TITLE>
    <META NAME="GENERATOR" CONTENT="WebLogic Server">
    </HEAD>
    <BODY bgcolor="white">
    <FONT FACE=Helvetica><BR CLEAR=all>
    <TABLE border=0 cellspacing=5><TR><TD><BR CLEAR=all>
    <FONT FACE="Helvetica" COLOR="black" SIZE="3"><H2>Error 401--Unauthorized</H2>
    </FONT></TD></TR>
    </TABLE>
    <TABLE border=0 width=100% cellpadding=10><TR><TD VALIGN=top WIDTH=100% BGCOLOR=white><FONT FACE="Courier New"><FONT FACE="Helvetica" SIZE="3"><H3>From RFC 2068 <i>Hypertext Transfer Protocol -- HTTP/1.1</i>:</H3>
    </FONT><FONT FACE="Helvetica" SIZE="3"><H4>10.4.2 401 Unauthorized</H4>
    </FONT><P><FONT FACE="Courier New">The request requires user authentication. The response MUST include a WWW-Authenticate header field (section 14.46) containing a challenge applicable to the requested resource. The client MAY repeat the request with a suitable Authorization header field (section 14.8). If the request already included Authorization credentials, then the 401 response indicates that authorization has been refused for those credentials. If the 401 response contains the same challenge as the prior response, and the user agent has already attempted authentication at least once, then the user SHOULD be presented the entity that was given in the response, since that entity MAY include relevant diagnostic information. HTTP access authentication is explained in section 11.</FONT></P>
    </FONT></TD></TR>
    </TABLE>
    </BODY>
    </HTML>

    >
    by using Client Cert authentication I have to set HTTPS required to true.
    >
    Yes.
    >
    When I try to invoke this service with http request, it redirects to https service.
    This actually just trashes the entire idea of terminating SSL in the load balancer.
    >
    Not necessarily. Although direct HTTP request to WebLogic is redirected to HTTPS enabled port, you can still use this settings with WebLogic plugin. I'm not aware of your deployment, but I use Apache plugin for WebLogic, terminate SSL on Apache and I'm still able to send requests authenticated by certificate from client through HTTPS.
    I don't know about F5, but I guess there should be similar feature as well.
    http://download.oracle.com/docs/cd/E12840_01/wls/docs103/cluster/load_balancing.html

  • How to deal with the "Set-Cookie" field in HTTP header??

    I follow the RFC-2616 specification to write a socket program to fetch web pages.
    I have to deal with all the fields included in the HTTP header.
    But the RFC-2616 doesn't talk anything about the "Set-Cookie" field.
    Does anyone know how to handle this field or provide me any useful documentation.
    Any help is appreciated.

    A cookie is set with the "Set-Cookie: "-field in the http header, like this:
    Set-Cookie: mycookie=someValue
    This cookie should only be returned to the same host as it came from, like this in the http header of a request:
    Cookie: mycookie=someValue
    If the parameter looks like this:
    Set-Cookie: mycookie=someValue; path=/cgi-bin
    , the cookie should only be returned to the host if the request path starts with /cgi-bin
    If the parameter looks liek this:
    Set-Cookie: mycookie=someValue; domain=.mydomain.com
    , the cooke should be returned to all hosts in the .mydomain.com-domain
    There is also a "expires="-field, which works as expected and a "secure"-field, which I'm not sure how to handle. Maybe the cookie should only be sent to an SSL-enabled host?
    Hope this helps you. Bye,
    Dag W.

  • SOAP Sender Adatper - Read custom http header field

    Hello,
    i try to read a custom http header into the dynamic configuration of a message - but it is not working as expected - in ASMA i configured to get the value of MYHEADER1 into XHEADERNAME1 - when testing with a MYHEADER1 value, the value is not put into XHEADERNAME1.
    Is it possible to get custom HTTP Headers in the message?
    bf
    franz

    I have quite the same problem!
    I try to make the receiver determination based on the content of XHeaderName1, but none of the Dynamic Configuration parameters is shown in the sxi_monitor.
    I've described my scenario in more detail in this thread
    http://scn.sap.com/message/13586532#13586532
    Does anyone have an idea?

  • BPEL HTTP Header Problem

    Hello @all
    I�m new to Open ESB and NetBeans.
    Does anybody has an idea how to put HTTP-Header to the BPEL-Process?
    I have to call a WebService (from BPEL) which expects user authentication (sessionId) in the HTTP-Header . How do I do that? Do I have to modify my WSDL-File?
    Thanks for your posts in advance

    You would have already defined your WSDL accommodating this requirement. If not, then yes, you might have to change your wsdl.
    Assuming you are sending the user info all the way from the BPEL process and assuming soap-http protocol. Typically the way i see this done is, you define a wsdl message with the parts that correspond to your business logic and parts that you would use in the "soap headers". In the BPEL it is always "business as usual" you deal with the abstract wsdl message. It would be developers responsibility to fill the wsdl message parts correctly. Once this message goes through the soap-http BC, it would be the BC's job to then put things as required by the HTTP protocol.
    hope that helps,
    Kiran B.

  • Log specific http header

    Hi,
    We have a "RedLine Networks T | X 2600 Real Time Accelerator", between the Clients and our frontends.
    As expected the IP that gets logged in the frontends is the "T|X 2600" IP, and not the client ip.
    In the request from the "T|X 2600" we have an http header in which we have the Client IP.
    Is it possible to "log" the contents of this header?
    we're using Sun Java(tm) System Messaging Server 6.1 HotFix 0.11 (built Jan 28 2005)
    thx,
    Goncalo Garcia

    As it may help others, I answer what I figured out.
    Every details of the http request is put into the m_binder.
    So a specific field can be accessed with m_binder.getEnvironmentValue("My_data")
    You can also list all the available data as it is a standard properties set.

Maybe you are looking for