cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christian Schneider <ch...@die-schneider.net>
Subject Re: JAX-WS CXF with Tibco JMS
Date Thu, 29 Jan 2009 21:21:50 GMT
Hi Ed,

I have created an example with an old style config but were not abble to 
reproduce the problem in this way. I will attach my configs.
Perhaps you can try with these settings. I only had to add a queue 
definition for my queue name to the queues.conf. Apart from this I used 
a freshly installed tibco ems.

It would be great if you can provide a sample maven project that 
reproduces the problem this week. Dan wanted to ship the cxf 2.1.4 today 
and I asked him to delay the release for some
days to fix this.

Greetings

Christian

--------------------------
<?xml version="1.0" encoding="UTF-8"?>
    <!--
        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.
    -->
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:jms="http://cxf.apache.org/transports/jms"
    xmlns:p="http://www.springframework.org/schema/p" 
xmlns:context="http://www.springframework.org/schema/context"
    xmlns:jaxws="http://cxf.apache.org/jaxws"
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
        http://www.springframework.org/schema/context 
http://www.springframework.org/schema/context/spring-context-2.5.xsd
        http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
        http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
        http://cxf.apache.org/transports/jms 
http://cxf.apache.org/schemas/configuration/jms.xsd">

    <import resource="classpath:META-INF/cxf/cxf.xml" />
    <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
    <import resource="classpath:META-INF/cxf/cxf-extension-jms.xml" />
    <import resource="classpath:META-INF/cxf/cxf-extension-http.xml" />

    <jaxws:client id="CustomerService" 
xmlns:customer="http://customerservice.example.com/"
        serviceName="customer:CustomerServiceService" 
endpointName="customer:CustomerServiceEndpoint"
        address="jms://" 
serviceClass="com.example.customerservice.CustomerService">
    </jaxws:client>

    <jms:conduit
        
name="{http://customerservice.example.com/}CustomerServiceEndpoint.jms-conduit">
        <jms:address destinationStyle="queue"
            jndiConnectionFactoryName="QueueConnectionFactory"
            jndiDestinationName="test.cxf.jmstransport.queue"
            useJms11="true">
            <jms:JMSNamingProperty name="java.naming.factory.initial"
                
value="com.tibco.tibjms.naming.TibjmsInitialContextFactory" />
            <jms:JMSNamingProperty name="java.naming.provider.url"
                value="tibjmsnaming://localhost:7222" />
        </jms:address>
    </jms:conduit>

</beans>
---------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:jms="http://cxf.apache.org/transports/jms"
    xmlns:p="http://www.springframework.org/schema/p" 
xmlns:jaxws="http://cxf.apache.org/jaxws"
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
        http://www.springframework.org/schema/context 
http://www.springframework.org/schema/context/spring-context-2.5.xsd
        http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
        http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
        http://cxf.apache.org/transports/jms 
http://cxf.apache.org/schemas/configuration/jms.xsd
">

    <import resource="classpath:META-INF/cxf/cxf.xml" />
    <import resource="classpath:META-INF/cxf/cxf-extension-http.xml" />
    <import 
resource="classpath:META-INF/cxf/cxf-extension-http-jetty.xml" />
    <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
    <import resource="classpath:META-INF/cxf/cxf-extension-jms.xml" />
   
    <jaxws:endpoint xmlns:customer="http://customerservice.example.com/"
        id="CustomerService" address="jms://" 
serviceName="customer:CustomerServiceService"
        endpointName="customer:CustomerServiceEndpoint" 
implementor="com.example.customerservice.impl.CustomerServiceImpl">
    </jaxws:endpoint>
   
    <jms:destination
        
name="{http://customerservice.example.com/}CustomerServiceEndpoint.jms-destination">
        <jms:address destinationStyle="queue"
            jndiConnectionFactoryName="QueueConnectionFactory"
            jndiDestinationName="test.cxf.jmstransport.queue"
            useJms11="true">
            <jms:JMSNamingProperty name="java.naming.factory.initial"
                
value="com.tibco.tibjms.naming.TibjmsInitialContextFactory" />
            <jms:JMSNamingProperty name="java.naming.provider.url"
                value="tibjmsnaming://localhost:7222" />
        </jms:address>
    </jms:destination>

</beans>

------------------------------------------

Ed Scriven schrieb:
> Christian,
>
> I have updated my configuration to the new config style with
> SingleConnectionFactory and the same problems persist.  I'll try and
> get a sample maven project made up for you.  As mentioned, all my code
> is on a segregated network with no internet access so this may take me
> a day or so.
>
> Regards,
>
> Ed
>
> 2009/1/29 Christian Schneider <chris@die-schneider.net>:
>   
>> Hi Ed,
>>
>> I have been able to reproduce the error on 2.2-SNAPSHOT now. It seems to
>> happen when the ConnectionFactory is not wrapped in a
>> SingleConnectionFactory.
>> With the config style you use this should happen automatically.
>>
>> Could you provide me with a complete maven sample project that shows the
>> error? This would help debugging into the problem.
>> As a workaround you can use the new config style as explained in :
>> http://cwiki.apache.org/CXF20DOC/using-the-jmsconfigfeature.html
>>
>> When you wrap the ConnectionFactory like in the example the error should not
>> occur. Still I would like to fix this of course ;-)
>>
>> Greetings
>>
>> Christian
>>
>> Ed Scriven schrieb:
>>     
>>> Christian,
>>>
>>> I have tested my configuration with Tibco 4.3.0 and CXF 2.2-SNAPSHOT.
>>> Unfortunately problems persist.
>>>
>>> Although javax.jms.InvalidDestinationException is no longer thrown,
>>> the client times out.  Inspecting the Tibco logs shows that the
>>> temporary queue is created successfully but "created receiver failed:
>>> invalid temporary queue" remains.
>>>
>>> For your information, my CXF configuration is as follows (please note
>>> that this has been manually typed over from a segregated network):
>>>
>>> Server:
>>> <bean id="systemParametersService"
>>> class="system.parameters.SystemParametersServiceImpl" />
>>>
>>> <jaxws:endpoint id="systemParameters"
>>> implementor="#systemParametersService" address="jms://" />
>>>
>>> <jms:destination
>>>
>>> name="{http://system.parameters/SystemParametersServiceImpl}SystemParametersServiceImplPort.jms-destination">
>>>  <jms:address destinationStyle="queue"
>>>
>>> jndiConnectionFactoryName="system.parameters.JMSConnectionFactory"
>>>                       jndiDestinationName="system.parameters.SOAP"
>>>                       useJms11="true">
>>>    <jms:JMSNamingProperty name="java.naming.factory.initial"
>>> value="com.tibco.tibjms.naming.TibjmsInitialContextFactory" />
>>>    <jms:JMSNamingProperty name="java.naming.provider.url"
>>> value="tibjmsnaming://localhost:7222" />
>>> </jms:destination>
>>>
>>> Client:
>>> <jaxws:client id="systemParametersClient"
>>> serviceClass="system.parameters.SystemParametersService"
>>> address="jms://" />
>>>
>>> <jms:conduit
>>> name="{http://system.parameters/SystemParametersServiceImpl}SystemParametersServicePort.jms-conduit">
>>>  <jms:address destinationStyle="queue"
>>>
>>> jndiConnectionFactoryName="system.parameters.JMSConnectionFactory"
>>>                       jndiDestinationName="system.parameters.SOAP"
>>>                       useJms11="true">
>>>    <jms:JMSNamingProperty name="java.naming.factory.initial"
>>> value="com.tibco.tibjms.naming.TibjmsInitialContextFactory" />
>>>    <jms:JMSNamingProperty name="java.naming.provider.url"
>>> value="tibjmsnaming://localhost:7222" />
>>> </jms:conduit>
>>>
>>> Regards,
>>>
>>> Ed
>>>
>>> 2009/1/28 Christian Schneider <chris@die-schneider.net>:
>>>
>>>       
>>>> Could you try to checkout the CXF head from subversion, compile it and
>>>> try
>>>> it with your project.
>>>> I was not yet able to identify the source of the problem but for me it
>>>> seems
>>>> solved on the head.
>>>> If it works for you too we can be quite sure that CXF 2.1.4 will include
>>>> the
>>>> fix for this issue.
>>>>
>>>> If your have subversion and maven installed the following will work:
>>>>
>>>> svn co http://svn.apache.org/repos/asf/cxf/trunk
>>>> cd trunk
>>>> set MAVEN_OPTS=-Xmx512M -XX:MaxPermSize=128M
>>>> mvn -Pfastinstall
>>>>
>>>> In your project you then include the just compiled version as:
>>>> 2.2-SNAPSHOT
>>>>
>>>> Greetings
>>>>
>>>> Christian
>>>>
>>>>
>>>> Ed Scriven schrieb:
>>>>
>>>>         
>>>>> Hello Christian,
>>>>>
>>>>> Did you get a chance to check your own samples with Tibco EMS?
>>>>>
>>>>> Regards,
>>>>>
>>>>> Ed
>>>>>
>>>>> 2009/1/21 Christian Schneider <chris@die-schneider.net>
>>>>>
>>>>>
>>>>>
>>>>>           
>>>>>> Hi Ed,
>>>>>>
>>>>>> I will check my own sample with tibco ems.
>>>>>>
>>>>>> Greetings
>>>>>>
>>>>>> Christian
>>>>>>
>>>>>> Ed Scriven schrieb:
>>>>>>
>>>>>> Hello,
>>>>>>
>>>>>>
>>>>>>             
>>>>>>> I am experiencing problems getting JAX-WS CXF with Tibco JMS
to work.
>>>>>>>  My
>>>>>>> configuration is derived from the
>>>>>>>
>>>>>>>
>>>>>>> http://cwiki.apache.org/CXF20DOC/jax-ws-java-first-with-jms-transport.htmland
>>>>>>> http://cwiki.apache.org/CXF20DOC/jms-transport.html.  I am using
>>>>>>> Spring.
>>>>>>>
>>>>>>> If I provide a jndiReplyDestinationName on the jms:conduit/jms:address
>>>>>>> element all works fine.  Unfortunately when I remove this attribute
>>>>>>> and
>>>>>>> expect temporary queues instead Tibco throws a
>>>>>>> javax.jms.InvalidDestinationException:
>>>>>>> Invalid temporary destination exception.  This exception is raised
>>>>>>> from
>>>>>>> the
>>>>>>> Spring DefaultMessageListenerContainer requesting Tibco libraries
to
>>>>>>> create
>>>>>>> a consumer.
>>>>>>>
>>>>>>> Having inspected the Tibco logs the temporary queue is created
>>>>>>> successfully
>>>>>>> named $TMP$.EMS-SERVER.9A049772E795.2.  The logs do state that
>>>>>>> "created
>>>>>>> receiver failed: invalid temporary queue".
>>>>>>>
>>>>>>> I have spent a good day trawling Google for anything related
to this
>>>>>>> issue,
>>>>>>> but with no success.  Apologies not stack traces nor code, they
are on
>>>>>>> a
>>>>>>> segregated network with no Internet access.  I can get them if
>>>>>>> required.
>>>>>>>
>>>>>>> Has anyone experience CXF with Tibco JMS?  Has anyone experienced
>>>>>>> temporary
>>>>>>> queue problems before?
>>>>>>>
>>>>>>> Regards,
>>>>>>>
>>>>>>> Ed
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>               
>>>>>> --
>>>>>>
>>>>>> Christian Schneider
>>>>>> ---
>>>>>> http://www.liquid-reality.de
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>             
>>>>>           
>>>> --
>>>>
>>>> Christian Schneider
>>>> ---
>>>> http://www.liquid-reality.de
>>>>
>>>>
>>>>
>>>>         
>>>
>>>
>>>       
>> --
>>
>> Christian Schneider
>> ---
>> http://www.liquid-reality.de
>>
>>
>>     
>
>
>
>   


-- 

Christian Schneider
---
http://www.liquid-reality.de


Mime
View raw message