[ 
https://issues.apache.org/jira/browse/TUSCANY-2200?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12585837#action_12585837
 ] 

Jean-Sebastien Delfino commented on TUSCANY-2200:
-------------------------------------------------

The problem is that line in CompositeProcessor (line 82):

    // FIXME: to be refactored
    private XPathFactory xPathFactory = XPathFactory.newInstance();

Well the FIXME comment is right to the point :)

We shouldn't initialize an xPathFactory statically here as it'll require an 
XPath implementation on the classpath (from Xalan for example) to work. It's 
really not good to have that static dependency on a 2Mb JAR just for handling 
xpath expressions in SCDL property source expressions (see CompositeProcessor 
line 262 for some code that uses that xPathFactory).

We should only require an XPath factory when we really need to process XPath 
expressions. So - yeah - the FIXME comment at the top is right, this should be 
refactored.... cleaned up would be a better way to characterize it.


> Sample calculator-webapp fails in WAS 6.1
> -----------------------------------------
>
>                 Key: TUSCANY-2200
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-2200
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SCA Samples
>    Affects Versions: Java-SCA-1.2
>            Reporter: Luciano Resende
>             Fix For: Java-SCA-1.2
>
>
> Exception = org.osoa.sca.ServiceRuntimeException
> Source = com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.init
> probeid = 111
> Stack Dump = org.osoa.sca.ServiceRuntimeException: 
> java.lang.reflect.InvocationTargetException
>       at 
> org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:264)
>       at 
> org.apache.tuscany.sca.host.embedded.SCADomain.newInstance(SCADomain.java:82)
>       at 
> org.apache.tuscany.sca.host.webapp.WebAppServletHost.init(WebAppServletHost.java:216)
>       at 
> org.apache.tuscany.sca.host.webapp.TuscanyServletFilter.init(TuscanyServletFilter.java:50)
>       at 
> com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.init(FilterInstanceWrapper.java:142)
>       at 
> com.ibm.ws.webcontainer.filter.WebAppFilterManager._loadFilter(WebAppFilterManager.java:465)
>       at 
> com.ibm.ws.webcontainer.filter.WebAppFilterManager.loadFilter(WebAppFilterManager.java:379)
>       at 
> com.ibm.ws.webcontainer.filter.WebAppFilterManager.getFilterInstanceWrapper(WebAppFilterManager.java:238)
>       at 
> com.ibm.ws.webcontainer.filter.WebAppFilterManager.getFilterChain(WebAppFilterManager.java:296)
>       at 
> com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:721)
>       at 
> com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:673)
>       at 
> com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:688)
>       at 
> com.ibm.ws.wswebcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:101)
>       at 
> com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.invokeFilters(DefaultExtensionProcessor.java:758)
>       at 
> com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:471)
>       at 
> com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:113)
>       at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3276)
>       at 
> com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:267)
>       at 
> com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811)
>       at 
> com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1455)
>       at 
> com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:113)
>       at 
> com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:454)
>       at 
> com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:383)
>       at 
> com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:263)
>       at 
> com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
>       at 
> com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
>       at 
> com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
>       at 
> com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
>       at 
> com.ibm.io.async.AsyncChannelFuture$1.run(AsyncChannelFuture.java:205)
>       at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)
> Caused by: java.lang.reflect.InvocationTargetException
>       at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>       at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:67)
>       at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>       at java.lang.reflect.Constructor.newInstance(Constructor.java:521)
>       at 
> org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:246)
>       ... 29 more
> Caused by: java.lang.RuntimeException: XPathFactory#newInstance() failed to 
> create an XPathFactory for the default object model: 
> http://java.sun.com/jaxp/xpath/dom with the 
> XPathFactoryConfigurationException: 
> javax.xml.xpath.XPathFactoryConfigurationException: No XPathFctory 
> implementation found for the object model: http://java.sun.com/jaxp/xpath/dom
>       at javax.xml.xpath.XPathFactory.newInstance(Unknown Source)
>       at 
> org.apache.tuscany.sca.assembly.xml.CompositeProcessor.<init>(CompositeProcessor.java:82)
>       at 
> org.apache.tuscany.sca.host.embedded.impl.ReallySmallRuntimeBuilder.createContributionService(ReallySmallRuntimeBuilder.java:192)
>       at 
> org.apache.tuscany.sca.host.embedded.impl.ReallySmallRuntime.start(ReallySmallRuntime.java:139)
>       at 
> org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.init(DefaultSCADomain.java:118)
>       at 
> org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.<init>(DefaultSCADomain.java:109)
>       at 
> org.apache.tuscany.sca.host.webapp.WebSCADomain.<init>(WebSCADomain.java:41)
>       ... 34 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to