|
Hi Griffin You have combined the non-blocking http/s transports with the blocking transports in your axis2.xml. Can you configure your transports as listed here http://svn.apache.org/viewvc/webservices/synapse/trunk/java/repository/conf/axis2.xml?view=markup I think that should do the trick.. asankha --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]I am able to view the WSDL of the proxied service over http through synapse. I am not using the sample services at this time. I suspect that I have something misconfigured :-) Thank you for your help on this.Thanks, Griffin synapse.xml <!-- ~ Licensed to the Apache Software Foundation (ASF) under one ~ or more contributor license agreements. See the NOTICE file ~ distributed with this work for additional information ~ regarding copyright ownership. The ASF licenses this file ~ to you under the Apache License, Version 2.0 (the ~ "License"); you may not use this file except in compliance ~ with the License. You may obtain a copy of the License at ~ ~ http://www.apache.org/licenses/LICENSE-2.0 ~ ~ Unless required by applicable law or agreed to in writing, ~ software distributed under the License is distributed on an ~ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY ~ KIND, either express or implied. See the License for the ~ specific language governing permissions and limitations ~ under the License. --> <synapse xmlns="http://ws.apache.org/ns/synapse"> <!-- the SimpleURLRegistry allows access to a URL based resource store such as the --> <!-- file system (file://) or a web server (http://) --> <registry provider="org.apache.synapse.registry.url.SimpleURLRegistry"> <!-- the root property of the simple URL registry helps resolve a resource URL as root + key --> <property name="root" value="file:repository/conf/sample/resources/"/> <!-- all resources loaded from the URL registry would be cached for this number of milli seconds --> <property name="cachableDuration" value="15000"/> </registry> <definitions> <endpoint name="VRAPI-1.0" address="https://testserver.mydomain.com/1.0/MYAPI"/> <set-property name="MYAPI.wsdl" key="proxy/MYAPI.wsdl"/> <sequence name="MYAPI-In"> <send> <endpoint ref="MYAPI-1.0"/> </send> </sequence> <sequence name="MYAPI-Out"> <send/> </sequence> </definitions> <proxies> <proxy name="MYAPI"> <wsdl key="MYAPI.wsdl"/> <target inSequence="MYAPI-In" outSequence="MYAPI-Out"/> </proxy> </proxies> <!-- The most simple Synapse configuration --> <rules> <!-- Log all messages passing through --> <log level="none"/> <send/> </rules> </synapse> axis2.xml <!-- ~ Licensed to the Apache Software Foundation (ASF) under one ~ or more contributor license agreements. See the NOTICE file ~ distributed with this work for additional information ~ regarding copyright ownership. The ASF licenses this file ~ to you under the Apache License, Version 2.0 (the ~ "License"); you may not use this file except in compliance ~ with the License. You may obtain a copy of the License at ~ ~ http://www.apache.org/licenses/LICENSE-2.0 ~ ~ Unless required by applicable law or agreed to in writing, ~ software distributed under the License is distributed on an ~ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY ~ KIND, either express or implied. See the License for the ~ specific language governing permissions and limitations ~ under the License. --> <axisconfig name="AxisJava2.0"> <!-- ================================================= --> <!-- Parameters --> <!-- ================================================= --> <parameter name="hotdeployment" locked="false">true</parameter> <parameter name="hotupdate" locked="false">false</parameter> <parameter name="enableMTOM" locked="false">false</parameter> <parameter name="enableSwA" locked="false">false</parameter> <!--Uncomment if you want to enable file caching for attachments --> <!--parameter name="cacheAttachments" locked="false">true</parameter> <parameter name="attachmentDIR" locked="false"></parameter> <parameter name="sizeThreshold" locked="false">4000</parameter--> <!--This will give out the timout of the configuration contexts, in seconds--> <parameter name="ConfigContextTimeoutInterval" locked="false">30</parameter> <!--During a fault, stacktrace can be sent with the fault message. The following flag will control --> <!--that behaviour.--> <parameter name="sendStacktraceDetailsWithFaults" locked="false">true</parameter> <!--If there aren't any information available to find out the fault reason, we set the message of the expcetion--> <!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be --> <!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag--> <!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.--> <parameter name="DrillDownToRootCauseForFaultReason" locked="false">false</parameter> <parameter name="Sandesha2StorageManager" locked="false">inmemory</parameter> <parameter name="userName" locked="false">admin</parameter> <parameter name="password" locked="false">axis2</parameter> <!--Following params will set the proper context paths for invocations. All the endpoints will have a commons context--> <!--root which can configured using the following contextRoot parameter--> <parameter name="contextRoot" locked="false">ws</parameter>--> <!--Our HTTP endpoints can handle both REST and SOAP. Following parameters can be used to distingiush those endpoints--> <!--In case of a servlet, if you change this you have to manually change the settings of your servlet container to map this --> <!--context path to proper Axis2 servlets--> <!--<parameter name="servicePath" locked="false">services</parameter>--> <!--<parameter name="restPath" locked="false">rest</parameter>--> <!--Set the flag to true if you want to enable transport level session mangment--> <parameter name="manageTransportSession" locked="false">false</parameter> <!--Following two parameters will be used to handle REST in Axis2. The default settings will make Axis2 to have two--> <!--different endpoints, one for REST (AxisRESTServlet) one for SOAP message handling (AxisServlet). But following--> <!--parameters help to tweak the message handling of two main servlets. --> <!-- If the enableRESTInAxis2MainServlet is true, then Axis2MainServlet will handle both SOAP and REST messages --> <parameter name="enableRESTInAxis2MainServlet" locked="true">false</parameter> <!-- Following parameter will completely disable REST handling in both the servlets--> <parameter name="disableREST" locked="true">false</parameter> <!-- This will disable the separate servlet we have for REST handling. --> <parameter name="disableSeparateEndpointForREST" locked="true">false</parameter> <!-- If you have a frontend host which exposes this webservice using a different public URL --> <!-- use this parameter to override autodetected url --> <!--<parameter name="httpFrontendHostUrl" locked="false">https://someotherhost/context</parameter>--> <!-- The way of adding listener to the system--> <!-- <listener class="org.apache.axis2.ObserverIMPL">--> <!-- <parameter name="RSS_URL" locked="false">http://127.0.0.1/rss</parameter>--> <!-- </listener>--> <!-- ================================================= --> <!-- Message Receivers --> <!-- ================================================= --> <!--This is the Deafult Message Receiver for the system , if you want to have MessageReceivers for --> <!--all the other MEP implement it and add the correct entry to here , so that you can refer from--> <!--any operation --> <!--Note : You can ovride this for particular service by adding the same element with your requirement--> <messageReceivers> <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only" class="org.apache.axis2.receivers.RawXMLINOnlyMessa geReceiver"/> <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.receivers.RawXMLINOutMessag eReceiver"/> </messageReceivers> <!-- ================================================= --> <!-- Transport Ins --> <!-- ================================================= --> <!--<transportReceiver name="http" class="org.apache.axis2.transport.nhttp.AsyncHTTPListener"/>--> <transportReceiver name="http" class="org.apache.axis2.transport.http.SimpleHTTPServ er"> <parameter name="port" locked="false">82</parameter> <!-- Here is the complete list of supported parameters (see example settings further below): port: the port to listen on (default 6060) hostname: if non-null, url prefix used in reply-to endpoint references (default null) originServer: value of http Server header in outgoing messages (default "Simple-Server/1.1") requestTimeout: value in millis of time that requests can wait for data (default 20000) requestTcpNoDelay: true to maximize performance and minimize latency (default true) false to minimize bandwidth consumption by combining segments requestCoreThreadPoolSize: number of threads available for request processing (unless queue fills up) (default 25) requestMaxThreadPoolSize: number of threads available for request processing if queue fills us (default 150) note that default queue never fills up: see HttpFactory threadKeepAliveTime: time to keep threads in excess of core size alive while inactive (default 180) note that no such threads can exist with default unbounded request queue threadKeepAliveTimeUnit: TimeUnit of value in threadKeepAliveTime (default SECONDS) (default SECONDS) --> <!-- <parameter name="hostname" locked="false">http://fsepdf01.fsenablers.com</parameter> --> <!-- <parameter name="originServer" locked="false">My-Server/1.1</parameter> --> <!-- <parameter name="requestTimeout" locked="false">10000</parameter> --> <!-- <parameter name="requestTcpNoDelay" locked="false">false</parameter> --> <!-- <parameter name="requestCoreThreadPoolSize" locked="false">50</parameter> --> <!-- <parameter name="RequestMaxThreadPoolSize" locked="false">100</parameter> --> <!-- <parameter name="threadKeepAliveTime" locked="false">240000</parameter> --> <!-- <parameter name="threadKeepAliveTimeUnit" locked="false">MILLISECONDS</parameter> --> </transportReceiver> <!--Uncomment this and configure as appropriate for JMS transport support, after setting up your JMS environment (e.g. ActiveMQ) <transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener"> <parameter name="myTopicConnectionFactory" locked="false"> <parameter name="java.naming.factory.initial" locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</param eter> <parameter name="java.naming.provider.url" locked="false">tcp://localhost:61616</parameter> <parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">TopicConnectionFactory</parameter> </parameter> <parameter name="myQueueConnectionFactory" locked="false"> <parameter name="java.naming.factory.initial" locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</param eter> <parameter name="java.naming.provider.url" locked="false">tcp://localhost:61616</parameter> <parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter> </parameter> <parameter name="default" locked="false"> <parameter name="java.naming.factory.initial" locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</param eter> <parameter name="java.naming.provider.url" locked="false">tcp://localhost:61616</parameter> <parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter> </parameter> </transportReceiver>--> <!--Uncomment if you want to have SMTP transport support--> <!--<transportReceiver name="mail" class="org.apache.axis2.transport.mail.SimpleMailListener">--> <!--<parameter name="transport.mail.pop3.host" locked="false">127.0.0.1</parameter>--> <!--<parameter name="transport.mail.pop3.user" locked="false">axis2</parameter>--> <!--<parameter name="transport.mail.pop3.password" locked="false">axis2</parameter>--> <!--<parameter name="transport.mail.pop3.port" locked="false">110</parameter>--> <!--<parameter name="transport.mail.replyToAddress" locked="false">[EMAIL PROTECTED]</parameter>--> <!--</transportReceiver>--> <!--<transportReceiver name="tcp"--> <!--class="org.apache.axis2.transport.tcp.TCPServer"> --> <!--<parameter name="port" locked="false">6060</parameter>--> <!--If you want to give your own host address for EPR generation--> <!--uncommet following paramter , and set as you required.--> <!--<parameter name="hostname" locked="false">tcp://myApp.com/ws</parameter>--> <!--</transportReceiver>--> <!-- ================================================= --> <!-- Transport Outs --> <!-- ================================================= --> <transportSender name="tcp" class="org.apache.axis2.transport.tcp.TCPTransportSende r"/> <transportSender name="local" class="org.apache.axis2.transport.local.LocalTransportS ender"/> <!-- <transportSender name="http" class="org.apache.axis2.transport.http.CommonsHTTPTrans portSender"/> --> <!--<transportSender name="http" class="org.apache.axis2.transport.nhttp.AsyncHTTPSender "> <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter> <parameter name="Transfer-Encoding" locked="false">chunked</parameter> </transportSender>--> <!-- <transportSender name="https" class="org.apache.axis2.transport.http.CommonsHTTPTrans portSender"> <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter> <parameter name="Transfer-Encoding" locked="false">chunked</parameter> </transportSender> --> <transportSender name="http" class="org.apache.axis2.transport.nhttp.HttpCoreNIOSender"> <parameter name="non-blocking" locked="false">true</parameter> </transportSender> <transportSender name="https" class="org.apache.axis2.transport.nhttp.HttpCoreNIOSSLSender"> <parameter name="non-blocking" locked="false">true</parameter> <parameter name="keystore" locked="false"> <KeyStore> <Location>keystore.pkcs12</Location> <Type>PKCS12</Type> <Password>password</Password> <KeyPassword>password</KeyPassword> </KeyStore> </parameter> <parameter name="truststore" locked="false"> <TrustStore> <Location>truststore.jks</Location> <Type>JKS</Type> <Password>password</Password> </TrustStore> </parameter> </transportSender> <transportSender name="jms" class="org.apache.axis2.transport.jms.JMSSender"/> <!-- Uncomment this one with the appropriate papameters to enable the SMTP transport Receiver <transportSender name="mailto" class="org.apache.axis2.transport.mail.MailTransportSender"> <parameter name="transport.mail.smtp.host" locked="false">127.0.0.1</parameter> <parameter name="transport.mail.smtp.user" locked="false">axis2</parameter> <parameter name="transport.mail.smtp.password" locked="false">axis2</parameter> <parameter name="transport.mail.smtp.port" locked="false">25</parameter> </transportSender> --> <!-- ================================================= --> <!-- Global Modules --> <!-- ================================================= --> <!-- Comment this to disable Addressing --> <module ref="addressing"/> <module ref="synapse"/> <!--Configuring module , providing parameters for modules whether they refer or not--> <!--<moduleConfig name="addressing">--> <!--<parameter name="addressingPara" locked="false">N/A</parameter>--> <!--</moduleConfig>--> <!-- ================================================= --> <!-- Phases --> <!-- ================================================= --> <phaseOrder type="InFlow"> <!-- System pre defined phases --> <phase name="Transport"> <handler name="RequestURIBasedDispatcher" class="org.apache.axis2.engine.RequestURIBasedDispatche r"> <order phase="Transport"/> </handler> <handler name="SOAPActionBasedDispatcher" class="org.apache.axis2.engine.SOAPActionBasedDispatche r"> <order phase="Transport"/> </handler> </phase> <phase name="Security"/> <phase name="PreDispatch"/> <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase"> <handler name="AddressingBasedDispatcher" class="org.apache.axis2.engine.AddressingBasedDispatche r"> <order phase="Dispatch"/> </handler> <handler name="SOAPMessageBodyBasedDispatcher" class="org.apache.axis2.engine.SOAPMessageBodyBasedDisp atcher"> <order phase="Dispatch"/> </handler> <handler name="InstanceDispatcher" class="org.apache.axis2.engine.InstanceDispatcher"> <order phase="Dispatch"/> </handler> </phase> <!-- System pre defined phases --> <phase name="RMPhase"/> <phase name="MUPhase"/> <!-- Must Understand Header processing phase --> <!-- After Postdispatch phase module author or or service author can add any phase he want --> <phase name="OperationInPhase"/> </phaseOrder> <phaseOrder type="OutFlow"> <!-- user can add his own phases to this area --> <phase name="MUPhase"/> <!-- Must Understand Header processing phase --> <phase name="RMPhase"/> <phase name="OperationOutPhase"/> <!--system predefined phase--> <!--these phase will run irrespective of the service--> <phase name="PolicyDetermination"/> <phase name="MessageOut"/> <phase name="Security"/> </phaseOrder> <phaseOrder type="InFaultFlow"> <phase name="PreDispatch"/> <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase"> <handler name="RequestURIBasedDispatcher" class="org.apache.axis2.engine.RequestURIBasedDispatche r"> <order phase="Dispatch"/> </handler> <handler name="SOAPActionBasedDispatcher" class="org.apache.axis2.engine.SOAPActionBasedDispatche r"> <order phase="Dispatch"/> </handler> <handler name="AddressingBasedDispatcher" class="org.apache.axis2.engine.AddressingBasedDispatche r"> <order phase="Dispatch"/> </handler> <handler name="SOAPMessageBodyBasedDispatcher" class="org.apache.axis2.engine.SOAPMessageBodyBasedDisp atcher"> <order phase="Dispatch"/> </handler> <handler name="InstanceDispatcher" class="org.apache.axis2.engine.InstanceDispatcher"> <order phase="PostDispatch"/> </handler> </phase> <!-- user can add his own phases to this area --> <phase name="RMPhase"/> <phase name="MUPhase"/> <!-- Must Understand Header processing phase --> <phase name="OperationInFaultPhase"/> </phaseOrder> <phaseOrder type="OutFaultFlow"> <!-- user can add his own phases to this area --> <phase name="MUPhase"/> <!-- Must Understand Header processing phase --> <phase name="RMPhase"/> <phase name="OperationOutFaultPhase"/> <phase name="PolicyDetermination"/> <phase name="MessageOut"/> </phaseOrder> </axisconfig> -----Original Message----- From: Asankha C. Perera [mailto:[EMAIL PROTECTED]] Sent: Wednesday, March 07, 2007 7:47 AM To: [email protected] Subject: Re: Outbound HTTPS with Client Certificate Hi Griffin Is it possible for you to attach your synapse.xml and axis2.xml? I am assuming you are using 0.91 with the latest nhttp code. I will try this out shortly. It seems like your out transport in the axis2.xml is not properly configured - so having your config file will help me. Also to verify, your client talks to Synapse using http, and Synapse uses https to talk to an external service. Are you using the samples (server / client) by any chance? asankha Michael Griffin wrote: |
- Outbound HTTPS with Client Certificate Michael Griffin
- Re: Outbound HTTPS with Client Certificate Asankha C. Perera
- RE: Outbound HTTPS with Client Certificate Michael Griffin
- Re: Outbound HTTPS with Client Certificate Asankha C. Perera
- RE: Outbound HTTPS with Client Certific... Michael Griffin
- Re: Outbound HTTPS with Client Cer... Asankha C. Perera
- RE: Outbound HTTPS with Client... Michael Griffin
- Re: Outbound HTTPS with Cl... Asankha C. Perera
- RE: Outbound HTTPS with Cl... Michael Griffin
- Re: Outbound HTTPS with Cl... Asankha C. Perera
- Re: Outbound HTTPS with Cl... Asankha C. Perera
- RE: Outbound HTTPS with Cl... Michael Griffin
- RE: Outbound HTTPS with Cl... Michael Griffin
- Re: Outbound HTTPS with Cl... Asankha C. Perera
- RE: Outbound HTTPS with Cl... Michael Griffin
- Re: Outbound HTTPS with Cl... Paul Fremantle
- RE: Outbound HTTPS with Cl... Michael Griffin
- Re: Outbound HTTPS with Cl... Asankha C. Perera
