[
https://issues.apache.org/jira/browse/TUSCANY-3588?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Simon Nash resolved TUSCANY-3588.
---------------------------------
Resolution: Fixed
The problem is caused by not testing for a null callback interface before using
the callback interface in line 88 of ComponentDocumentProcessor.java. There
are also two other places in ComponentDocumentProcessor.java and
ComponentTypeDocumentProcessor.java where the callback interface is used
without ensuring that it is non-null.
Fixed under revision r951561 by adding the missing null tests.
> NullPointerException when adding composite in Domain Manager GUI
> ----------------------------------------------------------------
>
> Key: TUSCANY-3588
> URL: https://issues.apache.org/jira/browse/TUSCANY-3588
> Project: Tuscany
> Issue Type: Bug
> Components: Java SCA Domain Management
> Affects Versions: Java-SCA-1.6
> Reporter: Simon Nash
> Assignee: Simon Nash
> Fix For: Java-SCA-Next
>
>
> After fixing issue 3587, adding a composite to the domain composite in the
> Domain Manager GUI produces a NullPointerException at line 88 of
> ComponentDocumentProcessor.java in modules/domain-search. The stack trace is
> shown below.
> [java] java.lang.NullPointerException
> [java] at
> org.apache.tuscany.sca.domain.search.impl.ComponentDocumentPr
> ocessor.process(ComponentDocumentProcessor.java:88)
> [java] at
> org.apache.tuscany.sca.domain.search.DocumentProcessorsMap.pr
> ocess(DocumentProcessorsMap.java:85)
> [java] at
> org.apache.tuscany.sca.domain.search.impl.CompositeDocumentPr
> ocessor.process(CompositeDocumentProcessor.java:62)
> [java] at
> org.apache.tuscany.sca.domain.search.DocumentProcessorsMap.pr
> ocess(DocumentProcessorsMap.java:85)
> [java] at
> org.apache.tuscany.sca.domain.search.impl.ContributionDocumen
> tProcessor.process(ContributionDocumentProcessor.java:114)
> [java] at
> org.apache.tuscany.sca.domain.search.DocumentProcessorsMap.pr
> ocess(DocumentProcessorsMap.java:85)
> [java] at
> org.apache.tuscany.sca.domain.search.impl.DomainSearchImpl.co
> ntributionAdded(DomainSearchImpl.java:234)
> [java] at
> org.apache.tuscany.sca.domain.search.impl.DomainSearchImpl.up
> dateContribution(DomainSearchImpl.java:271)
> [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> [java] at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcces
> sorImpl.java:39)
> [java] at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMet
> hodAccessorImpl.java:25)
> [java] at java.lang.reflect.Method.invoke(Method.java:597)
> [java] at
> org.apache.tuscany.sca.implementation.java.invocation.JavaImp
> lementationInvoker.invoke(JavaImplementationInvoker.java:156)
> [java] at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInter
> ceptor.invoke(PassByValueInterceptor.java:55)
> [java] at
> org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.inv
> oke(SCABindingInvoker.java:61)
> [java] at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInter
> ceptor.invoke(PassByValueInterceptor.java:55)
> [java] at
> org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.i
> nvoke(JDKInvocationHandler.java:349)
> [java] at
> org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.i
> nvoke(JDKInvocationHandler.java:193)
> [java] at $Proxy12.updateContribution(Unknown Source)
> [java] at
> org.apache.tuscany.sca.domain.manager.impl.DeployedCompositeC
> ollectionImpl.updateDomainSearch(DeployedCompositeCollectionImpl.java:313)
> [java] at
> org.apache.tuscany.sca.domain.manager.impl.DeployedCompositeC
> ollectionImpl.post(DeployedCompositeCollectionImpl.java:226)
> [java] at
> org.apache.tuscany.sca.domain.manager.impl.DeployedCompositeC
> ollectionImpl.post(DeployedCompositeCollectionImpl.java:81)
> [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> [java] at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcces
> sorImpl.java:39)
> [java] at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMet
> hodAccessorImpl.java:25)
> [java] at java.lang.reflect.Method.invoke(Method.java:597)
> [java] at
> org.apache.tuscany.sca.implementation.java.invocation.JavaImp
> lementationInvoker.invoke(JavaImplementationInvoker.java:156)
> [java] at
> org.apache.tuscany.sca.core.databinding.wire.PassByValueInter
> ceptor.invoke(PassByValueInterceptor.java:55)
> [java] at
> org.apache.tuscany.sca.binding.atom.provider.AtomBindingListe
> nerServlet.doPost(AtomBindingListenerServlet.java:591)
> [java] at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
> [java] at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
> [java] at
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.
> java:487)
> [java] at
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandle
> r.java:362)
> [java] at
> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandle
> r.java:181)
> [java] at
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandle
> r.java:726)
> [java] at
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrappe
> r.java:139)
> [java] at org.mortbay.jetty.Server.handle(Server.java:324)
> [java] at
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection
> .java:505)
> [java] at
> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpC
> onnection.java:842)
> [java] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
> [java] at
> org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:2
> 11)
> [java] at
> org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:3
> 80)
> [java] at
> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEnd
> Point.java:395)
> [java] at org.apache.tuscany.sca.core.work.Work.run(Work.java:63)
> [java] at
> org.apache.tuscany.sca.core.work.ThreadPoolWorkManager$Decora
> tingWork.run(ThreadPoolWorkManager.java:215)
> [java] at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Thread
> PoolExecutor.java:885)
> [java] at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPool
> Executor.java:907)
> [java] at java.lang.Thread.run(Thread.java:619)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.