Hi Colm,

<<<<
I think the reason that when you view the WSDL via "
https://wkengchoi.global.sdl.corp:9443/fedizidpsts/STSService?wsdl"; you
only see the correct address for the "TransportUT_Port" is that
"/STSService" is the address defined for the TransportUT_Port in
cxf-transport.xml. If you want to see the correct address for the
"Transport_Port" in cxf-transport.xml you would use the WSDL location "
https://wkengchoi.global.sdl.corp:9443/fedizidpsts/STSServiceTransport?wsdl";
etc.
>>>>

Now I understand what you are talking about. I was trying to see what I
want to see. So, Fediz STS has wsdl file for each end point. This is
something different than ADFS. I was expecting one generic wsdl file(I
thought that it was
https://wkengchoi.global.sdl.corp:9443/fedizidpsts/STSService?wsdl) for
entire Fediz STS and I thought it will be is fine long as I mention port
name that I going to use at the client side.

When I use UTEncrypted endpoint, then I have to use wsdl
https://wkengchoi.global.sdl.corp:9443/fedizidpsts/UTEncrypted?wsdl as
Fediz STS wsdl reference.

Thanks.

Gina

On Wed, Jul 11, 2012 at 8:47 AM, Colm O hEigeartaigh <[email protected]>wrote:

>
> I think the reason that when you view the WSDL via "
> https://wkengchoi.global.sdl.corp:9443/fedizidpsts/STSService?wsdl"; you
> only see the correct address for the "TransportUT_Port" is that
> "/STSService" is the address defined for the TransportUT_Port in
> cxf-transport.xml. If you want to see the correct address for the
> "Transport_Port" in cxf-transport.xml you would use the WSDL location "
> https://wkengchoi.global.sdl.corp:9443/fedizidpsts/STSServiceTransport?wsdl";
> etc.
>
> Colm.
>
>
> On Wed, Jul 11, 2012 at 12:43 PM, Gina Choi <[email protected]> wrote:
>
>> Following is what I have.
>>
>>    <jaxws:client name="{
>> http://www.example.org/contract/DoubleIt}DoubleItPort";
>> createdFromAPI="true">
>>        <jaxws:properties>
>>            <!-- Use below for UT Authentication between WSC and STS -->
>>            <entry key="ws-security.sts.client">
>>                <bean class="org.apache.cxf.ws.security.trust.STSClient">
>>                    <constructor-arg ref="cxf"/>
>>                    <property name="wsdlLocation" value="
>> http://wkengchoi.global.sdl.corp:9080/fedizidpsts/STSService?wsdl"/>
>>                    <property name="serviceName" value="{
>> http://docs.oasis-open.org/ws-sx/ws-trust/200512/}SecurityTokenService"/>
>>                    <property name="endpointName" value="{
>> http://docs.oasis-open.org/ws-sx/ws-trust/200512/}UTEncrypted_Port"/>
>>                    <property name="properties">
>>                        <map>
>>                            <entry key="ws-security.username"
>> value="gchoi"/>
>>                            <entry key="ws-security.callback-handler"
>> value="client.ClientCallbackHandler"/>
>>                            <entry key="ws-security.encryption.properties"
>> value="clientKeystore.properties"/>
>>                            <entry key="ws-security.encryption.username"
>> value="mystskey"/>
>>                        </map>
>>                    </property>
>>                </bean>
>>            </entry>
>>        </jaxws:properties>
>>    </jaxws:client>
>> </beans>
>>
>>
>> On Wed, Jul 11, 2012 at 7:24 AM, Colm O hEigeartaigh <[email protected]
>> > wrote:
>>
>>>
>>> What does your client configuration look like for this case?
>>>
>>> Colm.
>>>
>>>
>>> On Wed, Jul 11, 2012 at 11:58 AM, Gina Choi <[email protected]>wrote:
>>>
>>>> Hi Colm,
>>>>
>>>> Thanks for confirmation. If I browse(
>>>> https://wkengchoi.global.sdl.corp:9443/fedizidpsts/STSService?wsdl)
>>>> Fediz STS wsdl file, I see following content. As you noticed that except 
>>>> TransportUT_Port,
>>>> soap address for port UTEncrypted_Por, UT_Port and Transport_Port are
>>>> relative address(TransportKerberos_Port seems not ready. I might
>>>> comment this out).
>>>>
>>>>
>>>>   <wsdl:service name="SecurityTokenService">
>>>>
>>>>     <wsdl:port binding="wstrust:X509_Binding" name="X509_Port">
>>>>
>>>>       <soap:address location="/X509"/>
>>>>
>>>>     </wsdl:port>
>>>>
>>>>     <wsdl:port binding="wstrust:TransportUT_Binding"
>>>> name="TransportUT_Port">
>>>>
>>>>       <soap:address location="
>>>> https://wkengchoi.global.sdl.corp:9443/fedizidpsts/STSService"/>
>>>>
>>>>     </wsdl:port>
>>>>
>>>>     <wsdl:port binding="wstrust:TransportKerberos_Binding"
>>>> name="TransportKerberos_Port">
>>>>
>>>>       <soap:address location="
>>>> http://wkengchoi.global.sdl.corp:9080/jaxws-sts/sts"/>
>>>>
>>>>     </wsdl:port>
>>>>
>>>>     <wsdl:port binding="wstrust:UTEncrypted_Binding"
>>>> name="UTEncrypted_Port">
>>>>
>>>>       <soap:address location="/UTEncrypted"/>
>>>>
>>>>     </wsdl:port>
>>>>
>>>>     <wsdl:port binding="wstrust:Transport_Binding"
>>>> name="Transport_Port">
>>>>
>>>>       <soap:address location="/STSServiceTransport"/>
>>>>
>>>>     </wsdl:port>
>>>>
>>>>     <wsdl:port binding="wstrust:UT_Binding" name="UT_Port">
>>>>
>>>>       <soap:address location="/UT"/>
>>>>
>>>>     </wsdl:port>
>>>>
>>>>   </wsdl:service>
>>>>
>>>> Part of current configuration of my ws-trust-1.4-service.wsdl is as
>>>> follow.
>>>>
>>>>   <wsdl:service name="SecurityTokenService">
>>>>
>>>>       <wsdl:port name="UT_Port" binding="tns:UT_Binding">
>>>>
>>>>          <soap:address location="
>>>> http://wkengchoi.global.sdl.corp:9080/jaxws-sts/sts"; />
>>>>
>>>>       </wsdl:port>
>>>>
>>>>       <wsdl:port name="X509_Port" binding="tns:X509_Binding">
>>>>
>>>>          <soap:address location="
>>>> http://wkengchoi.global.sdl.corp:9080/jaxws-sts/sts"; />
>>>>
>>>>       </wsdl:port>
>>>>
>>>>       <wsdl:port name="Transport_Port" binding="tns:Transport_Binding">
>>>>
>>>>          <soap:address location="
>>>> http://wkengchoi.global.sdl.corp:9080/jaxws-sts/sts"; />
>>>>
>>>>       </wsdl:port>
>>>>
>>>>        <wsdl:port name="UTEncrypted_Port"
>>>> binding="tns:UTEncrypted_Binding">
>>>>
>>>>          <soap:address location="
>>>> http://wkengchoi.global.sdl.corp:9080/jaxws-sts/sts"; />
>>>>
>>>>       </wsdl:port>
>>>>
>>>>        <wsdl:port name="TransportUT_Port"
>>>> binding="tns:TransportUT_Binding">
>>>>
>>>>          <soap:address location="
>>>> http://wkengchoi.global.sdl.corp:9080/jaxws-sts/sts"; />
>>>>
>>>>       </wsdl:port>
>>>>
>>>>       <wsdl:port name="TransportKerberos_Port"
>>>> binding="tns:TransportKerberos_Binding">
>>>>
>>>>          <soap:address location="
>>>> http://wkengchoi.global.sdl.corp:9080/jaxws-sts/sts"; />
>>>>
>>>>       </wsdl:port>
>>>>
>>>>   </wsdl:service>
>>>>
>>>>
>>>>
>>>> When I run my client toward UTEncrypted_Port, I am getting following
>>>> exception. So, it doesn't like relative address.
>>>>
>>>> Exception in thread "main" javax.xml.ws.WebServiceException: Could not
>>>> send Message.
>>>>         at
>>>> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:145)
>>>>         at $Proxy25.doubleIt(Unknown Source)
>>>>         at client.WSClient.doubleIt(WSClient.java:18)
>>>>         at client.WSClient.main(WSClient.java:11)
>>>> *Caused by: java.net.MalformedURLException: no protocol: /UTEncrypted*
>>>>         at java.net.URL.<init>(URL.java:567)
>>>>         at java.net.URL.<init>(URL.java:464)
>>>>         at java.net.URL.<init>(URL.java:413)
>>>>         at
>>>> org.apache.cxf.transport.http.HTTPConduit.getURL(HTTPConduit.java:752)
>>>>         at
>>>> org.apache.cxf.transport.http.HTTPConduit.getURL(HTTPConduit.java:741)
>>>>         at
>>>> org.apache.cxf.transport.http.HTTPConduit.setupURL(HTTPConduit.java:685)
>>>>         at
>>>> org.apache.cxf.transport.http.HTTPConduit.prepare(HTTPConduit.java:474)
>>>>         at
>>>> org.apache.cxf.interceptor.MessageSenderInterceptor.handleMessage(MessageSenderInterceptor.java:46)
>>>>         at
>>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)
>>>>         at
>>>> org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:532)
>>>>         at
>>>> org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:464)
>>>>         at
>>>> org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:367)
>>>>         at
>>>> org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:320)
>>>>         at
>>>> org.apache.cxf.ws.security.trust.STSClient.requestSecurityToken(STSClient.java:722)
>>>>         at
>>>> org.apache.cxf.ws.security.trust.STSClient.requestSecurityToken(STSClient.java:602)
>>>>         at
>>>> org.apache.cxf.ws.security.trust.STSClient.requestSecurityToken(STSClient.java:594)
>>>>         at
>>>> org.apache.cxf.ws.security.policy.interceptors.IssuedTokenInterceptorProvider$IssuedTokenOutInterceptor.getTokenFromSTS(IssuedTokenInterceptorProvider.java:404)
>>>>         at
>>>> org.apache.cxf.ws.security.policy.interceptors.IssuedTokenInterceptorProvider$IssuedTokenOutInterceptor.handleMessage(IssuedTokenInterceptorProvider.java:188)
>>>>         at
>>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)
>>>>         at
>>>> org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:532)
>>>>         at
>>>> org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:464)
>>>>         at
>>>> org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:367)
>>>>         at
>>>> org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:320)
>>>>         at
>>>> org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:89)
>>>>         at
>>>> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:134)
>>>>
>>>> Thanks.
>>>>
>>>> Gina
>>>>
>>>
>
>
> --
> Colm O hEigeartaigh
>
> Talend Community Coder
> http://coders.talend.com
>
>

Reply via email to