Ok, I've answered my own question :)

For anyone interested, you can add the following section to your
weblogic.xml file:

  <container-descriptor>
      <prefer-web-inf-classes>true</prefer-web-inf-classes>
   </container-descriptor>

This has the same effect as the PARENT_LAST classloader moder in websphere.

Dave.

--
Dave Sowerby MEng MBCS



On Tue, Aug 5, 2008 at 7:33 PM, Dave Sowerby <[EMAIL PROTECTED]> wrote:
> Hi All,
>
> After quite a bit of digging around I've got a handle on what's going on 
> here...
>
> During the axiom marshalling it attempts to create an implementation
> provider for the javax.xml.stream.XMLOutputFactory service.
>
> On websphere, this is defined in
> wstx-asl-3.2.1.jar!/META-INF/services/javax.xml.stream.XMLOutputFactory
> (com.ctc.wstx.stax.WstxOutputFactory)
>
> On weblogic, this is also defined in
> weblogic.jar!/META-INF/services/javax.xml.stream.XMLOutputFactory
> (weblogic.xml.stax.XMLStreamOutputFactory)
>
> The weblogic default service definition is found first on the
> classpath, so the service API lookup finds it first - this
> implementation is not compatible with the axiom default implementation
> (woodstox) and so falls over whenever it's attempted to be used.
>
> I'm not convinced of any solution to this which would be appropriate -
> I have verified this is the root cause, by forcing the services API to
> respect the woodstox implemention, by placing a jaxp.properties in
> ${java.home}/lib
>
> Once this was in place, the tests I'd previously executed to failure
> started working fine.... The problem is obviously that this cannot be
> considered a suitable solution.
>
> To give the background, in case anyone can see of any obvious
> solution, the services API resolves the lookup in the following order:
>
> o Through system property
> o Through definition in ${java.home}/lib/jax.properties
> o Through resource lookup from the classpath for the appropriate services file
>
> Does any one know of any means to force the wstx-api.jar to a higher
> priority in the classloader?
>
> Cheers,
>
> Dave.
>
> --
> Dave Sowerby MEng MBCS
>
>
>
> On Tue, Aug 5, 2008 at 2:05 PM, Dave Sowerby <[EMAIL PROTECTED]> wrote:
>> Hey,
>>
>> So I'm seeing this behaviour in the samples too....
>>
>> sample-calculator-ws-webapp:
>>
>> I moved to composite into META-INF as previously discussed
>> (http://davesowerby.blogspot.com/2008/02/using-tuscany-with-weblogic.html)
>> Deployed to my weblogic 9.2 domain
>> Request http://localhost:7001/sample-calculator-ws-webapp/calc.jsp I
>> get a HTTP 500
>> The server side stack is attached, once again it contains:
>>
>> java.lang.IllegalArgumentException: The uri may not be theempty string.
>>
>> Does anyone have any ideas?  If I find more time I'll see if I can
>> investigate further than I have, though I haven't been able to make
>> much progress....
>>
>> Cheers,
>>
>> Dave.
>>
>> --
>> Dave Sowerby MEng MBCS
>>
>> On Tue, Aug 5, 2008 at 10:10 AM, Dave Sowerby <[EMAIL PROTECTED]> wrote:
>>> Hey Simon,
>>>
>>> This is a webapp I've taken directly from websphere 6.1 and deployed
>>> it to weblogic so I'd have expected it to work.
>>>
>>> The last time I tried Tuscany on weblogic was back on 1.2, so I'll
>>> give some of the example webapps a go in their default state and see
>>> if I can the same exceptions there.
>>>
>>> Cheers,
>>>
>>> Dave.
>>>
>>> --
>>> Dave Sowerby MEng MBCS
>>>
>>>
>>>
>>> On Tue, Aug 5, 2008 at 10:06 AM, Simon Laws <[EMAIL PROTECTED]> wrote:
>>>>
>>>>
>>>> On Mon, Aug 4, 2008 at 5:14 PM, Dave Sowerby <[EMAIL PROTECTED]> wrote:
>>>>>
>>>>> Hi All,
>>>>>
>>>>> I'm currently trying to use a Tuscany binding.ws webapp service on
>>>>> weblogic 9.2 - the service itself starts fine and I can access the
>>>>> appropriate ?wsdl endpoint.
>>>>>
>>>>> However, when I attempt to use this service through a Tuscany client I
>>>>> get an Exception with a root cause of:
>>>>>
>>>>> Caused by: org.apache.axis2.AxisFault:
>>>>> java.lang.IllegalArgumentException: The uri may not be theempty
>>>>> string.
>>>>>        at
>>>>> org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:486)
>>>>>        at
>>>>> org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:343)
>>>>>        at
>>>>> org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:389)
>>>>>        at
>>>>> org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:211)
>>>>>        at
>>>>> org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
>>>>>        at
>>>>> org.apache.tuscany.sca.binding.ws.axis2.Axis2BindingInvoker$1.run(Axis2BindingInvoker.java:128)
>>>>>
>>>>> Is this something anyone has seen?
>>>>>
>>>>> I've attached a service and client example which reproduces this fault
>>>>> along with the full Exception.
>>>>>
>>>>> Any help would be greatly appreciated.
>>>>>
>>>>> Cheers,
>>>>>
>>>>> Dave.
>>>>>
>>>>> --
>>>>> Dave Sowerby MEng MBCS
>>>>
>>>> Hi Dave
>>>>
>>>> Unfortunately I don't have a WebLogic server I can test on. Looking at the
>>>> test case and the stack trace it looks like it didn't even get past
>>>> sayHello(). Is that right? Does the app runs ok in other containers?
>>>>
>>>> Regards
>>>>
>>>> Simon
>>>>
>>>
>>
>

Reply via email to