Hi,

Yeah 'createProject' is a method I introduced. I've patched it to my
AppFactory instance.
Okay, I will debug backend code and see.

Thanks.

Regards,
Dilhasha

*M.N.F. Dilhasha*
Software Engineering Intern | *WSO2 Lanka*

email   :
*[email protected] <[email protected]>*mobile : +94 77 8449321

On Wed, Mar 18, 2015 at 1:04 PM, Mahesh Chinthaka <[email protected]> wrote:

> Hi,
>
> Is this 'createProject' method implemented by you  inside
> IssueTrackerService ?? Because in my code I cannot see such a method in
> IssueTrackerService.
> You can debug the backend code to find out the place where NP occurs.
>
>
> On Wed, Mar 18, 2015 at 11:40 AM, Fathima Dilhasha <[email protected]>
> wrote:
>
>> Hi,
>>
>> I tried logging in between the steps.
>>
>> * tenantId and tenantDomain are not null
>> * The null pointer exception takes place in the following line.
>>
>> server.osgiService('org.wso2.carbon.appfactory.issuetracking.service.IssueTrackerService').createProject(applicationName",
>>  issueTrackerConfig);
>>
>> Is it because the server cannot track the OSGI service I'm referring to?
>>  (The service is listed in the OSGI cosole)
>>
>> How can I figure it out?
>>
>> Thanks.
>> Regards,
>> Dilhasha
>>
>> *M.N.F. Dilhasha*
>> Software Engineering Intern | *WSO2 Lanka*
>>
>> email   :
>> *[email protected] <[email protected]>*mobile : +94 77 8449321
>>
>> On Wed, Mar 18, 2015 at 11:14 AM, Fathima Dilhasha <[email protected]>
>> wrote:
>>
>>> Hi Mahesh,
>>>
>>> Thanks for the points. I'll work on those and see.
>>>
>>> Regards,
>>> Dilhasha
>>>
>>> *M.N.F. Dilhasha*
>>> Software Engineering Intern | *WSO2 Lanka*
>>>
>>> email   :
>>> *[email protected] <[email protected]>*mobile : +94 77 8449321
>>>
>>> On Wed, Mar 18, 2015 at 11:13 AM, Mahesh Chinthaka <[email protected]>
>>> wrote:
>>>
>>>> Sorry I missed this,
>>>> getting modManager varialbe , put this befor getting the tenant domain.
>>>> var modManager = jagg.module("manager");
>>>>
>>>> On Wed, Mar 18, 2015 at 11:11 AM, Mahesh Chinthaka <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi Dilhasha,
>>>>> I think you havent got the tenant domain properly.
>>>>>
>>>>> you may use following to get tenant domain.
>>>>> var tenantDomain = modManager.getTenantDomain();
>>>>>
>>>>> you may use following to set tenant domain n id
>>>>>
>>>>> context.getThreadLocalCarbonContext().setTenantDomain(tenantDomain,true);
>>>>>
>>>>>
>>>>>  in between the steps you can put  info logs to see values, in that
>>>>> way you may be able to see whats null here.
>>>>>
>>>>> On Wed, Mar 18, 2015 at 10:59 AM, Danushka Fernando <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Few points
>>>>>>
>>>>>>    1. Did you check whether your osgi bundle is activated or not?
>>>>>>    May be that's the issue. Seems it cannot find the osgi service.
>>>>>>    2. When start tenant flow in setTenantDomain method there is a
>>>>>>    another signature which will take in tenantDomain (String) and
>>>>>>    resolveTenantID (boolean) parameters. You can use that instead of 
>>>>>> setting
>>>>>>    tenantID manually.
>>>>>>    3. The way you have included the module, AFAIR that's not the way
>>>>>>    to refer to a module. Refer to other places that we have done such a 
>>>>>> thing.
>>>>>>
>>>>>>
>>>>>> Thanks & Regards
>>>>>> Danushka Fernando
>>>>>> Software Engineer
>>>>>> WSO2 inc. http://wso2.com/
>>>>>> Mobile : +94716332729
>>>>>>
>>>>>> On Wed, Mar 18, 2015 at 10:45 AM, Fathima Dilhasha <[email protected]
>>>>>> > wrote:
>>>>>>
>>>>>>> Hi Mahesh,
>>>>>>>
>>>>>>> Thanks for the response.
>>>>>>>
>>>>>>> Following is the code in saveConfig.jag
>>>>>>>
>>>>>>> include("/jagg/jagg.jag");
>>>>>>> include("/jagg/constants.jag");
>>>>>>> include("/jagg/config_reader.jag");
>>>>>>> include("/modules/manager/manager.jag");
>>>>>>>
>>>>>>> (function () {
>>>>>>>
>>>>>>>     var carbon = require('carbon');
>>>>>>>     var log = new Log("module/issuetracker/saveConfig.jag");
>>>>>>>     var multitenancy = carbon.multitenancy;
>>>>>>>     var server = carbon.server;
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>     var context=multitenancy.getPrivilegedCarbonContext();
>>>>>>>     var tenantDomain = getTenantDomain();
>>>>>>>     var tenantId=getTenantId();
>>>>>>>
>>>>>>>     var issueTrackerConfig = 
>>>>>>> Packages.org.wso2.carbon.appfactory.issuetracking.beans.IssueTrackerConfigurations;
>>>>>>>     var issueConfig=new issueTrackerConfig();
>>>>>>>     issueConfig.setIssueTrackerinstanceUrl("some url");
>>>>>>>
>>>>>>>     try{
>>>>>>>
>>>>>>>         context.startTenantFlow();
>>>>>>>         context.getThreadLocalCarbonContext().setTenantId(tenantId);
>>>>>>>         
>>>>>>> context.getThreadLocalCarbonContext().setTenantDomain(tenantDomain);
>>>>>>>         
>>>>>>> server.osgiService('org.wso2.carbon.appfactory.issuetracking.service.IssueTrackerService').createProject("applicationName",
>>>>>>>  issueTrackerConfig);
>>>>>>>     }catch(e){
>>>>>>>         log.error(e);
>>>>>>>     }finally{
>>>>>>>         context.endTenantFlow();
>>>>>>>     }
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> }());
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> The getTenantDomain,getTenantId functions are in a different jag
>>>>>>> file, which I have included (manager.jag).
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> *M.N.F. Dilhasha*
>>>>>>> Software Engineering Intern | *WSO2 Lanka*
>>>>>>>
>>>>>>> email   :
>>>>>>> *[email protected] <[email protected]>*mobile : +94 77 8449321
>>>>>>>
>>>>>>> On Wed, Mar 18, 2015 at 10:35 AM, Mahesh Chinthaka <[email protected]
>>>>>>> > wrote:
>>>>>>>
>>>>>>>> Hi Dilhasha,
>>>>>>>>
>>>>>>>> This could be either not setting tenant domain/ id properly or,
>>>>>>>> issueTrackerConfig parameter might be null at that moment. can you 
>>>>>>>> share
>>>>>>>> the code segment of whole function please. So we can see the reason 
>>>>>>>> for NPE.
>>>>>>>>
>>>>>>>> On Wed, Mar 18, 2015 at 10:27 AM, Fathima Dilhasha <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> I'm trying to access an osgi service available in WSO2 Appfactory,
>>>>>>>>> from the 'appmgt' jaggery app. In this process I get the following
>>>>>>>>> exception in the server.
>>>>>>>>>
>>>>>>>>> *TID: [0] [AF] [2015-03-18 04:44:00,643] ERROR
>>>>>>>>> {module/issuetracker/saveConfig.jag} -
>>>>>>>>>  org.mozilla.javascript.WrappedException: Wrapped
>>>>>>>>> java.lang.NullPointerException (osgi#8)*
>>>>>>>>> * at
>>>>>>>>> org.mozilla.javascript.Context.throwAsScriptRuntimeEx(Context.java:1754)*
>>>>>>>>> * at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:148)*
>>>>>>>>> * at
>>>>>>>>> org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:225)*
>>>>>>>>> * at
>>>>>>>>> org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32)*
>>>>>>>>> * at org.mozilla.javascript.gen.osgi_11._c_anonymous_2(osgi:8)*
>>>>>>>>> * at org.mozilla.javascript.gen.osgi_11.call(osgi)*
>>>>>>>>> * at
>>>>>>>>> org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32)*
>>>>>>>>> * at
>>>>>>>>> org.jaggeryjs.rhino.appmgt.modules.issuetracker.get.c0._c_anonymous_1(/appmgt/modules/issuetracker/get/saveConfig.jag:49)*
>>>>>>>>> * at
>>>>>>>>> org.jaggeryjs.rhino.appmgt.modules.issuetracker.get.c0.call(/appmgt/modules/issuetracker/get/saveConfig.jag)*
>>>>>>>>> * at
>>>>>>>>> org.mozilla.javascript.optimizer.OptRuntime.call0(OptRuntime.java:23)*
>>>>>>>>> * at
>>>>>>>>> org.jaggeryjs.rhino.appmgt.modules.issuetracker.get.c0._c_script_0(/appmgt/modules/issuetracker/get/saveConfig.jag:26)*
>>>>>>>>> * at
>>>>>>>>> org.jaggeryjs.rhino.appmgt.modules.issuetracker.get.c0.call(/appmgt/modules/issuetracker/get/saveConfig.jag)*
>>>>>>>>> * at
>>>>>>>>> org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394)*
>>>>>>>>> * at
>>>>>>>>> org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091)*
>>>>>>>>> * at
>>>>>>>>> org.jaggeryjs.rhino.appmgt.modules.issuetracker.get.c0.call(/appmgt/modules/issuetracker/get/saveConfig.jag)*
>>>>>>>>> * at
>>>>>>>>> org.jaggeryjs.rhino.appmgt.modules.issuetracker.get.c0.exec(/appmgt/modules/issuetracker/get/saveConfig.jag)*
>>>>>>>>> * at
>>>>>>>>> org.jaggeryjs.scriptengine.engine.RhinoEngine.execScript(RhinoEngine.java:567)*
>>>>>>>>> * at
>>>>>>>>> org.jaggeryjs.scriptengine.engine.RhinoEngine.exec(RhinoEngine.java:273)*
>>>>>>>>> * at
>>>>>>>>> org.jaggeryjs.jaggery.core.manager.WebAppManager.execute(WebAppManager.java:541)*
>>>>>>>>> * at
>>>>>>>>> org.jaggeryjs.jaggery.core.JaggeryServlet.doGet(JaggeryServlet.java:24)*
>>>>>>>>> * at javax.servlet.http.HttpServlet.service(HttpServlet.java:735)*
>>>>>>>>> * at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:487)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:339)*
>>>>>>>>> * at
>>>>>>>>> org.jaggeryjs.jaggery.core.JaggeryFilter.doFilter(JaggeryFilter.java:21)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)*
>>>>>>>>> * at
>>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:178)*
>>>>>>>>> * at
>>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47)*
>>>>>>>>> * at
>>>>>>>>> org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:56)*
>>>>>>>>> * at
>>>>>>>>> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47)*
>>>>>>>>> * at
>>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:141)*
>>>>>>>>> * at
>>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)*
>>>>>>>>> * at
>>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)*
>>>>>>>>> * at
>>>>>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)*
>>>>>>>>> * at
>>>>>>>>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)*
>>>>>>>>> * at
>>>>>>>>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)*
>>>>>>>>> * at
>>>>>>>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1653)*
>>>>>>>>> * at
>>>>>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)*
>>>>>>>>> * at
>>>>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)*
>>>>>>>>> * at java.lang.Thread.run(Thread.java:744)*
>>>>>>>>> *Caused by: java.lang.NullPointerException*
>>>>>>>>> * at
>>>>>>>>> org.wso2.carbon.context.PrivilegedCarbonContext.getOSGiService(PrivilegedCarbonContext.java:448)*
>>>>>>>>> * at sun.reflect.GeneratedMethodAccessor70.invoke(Unknown Source)*
>>>>>>>>> * at
>>>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)*
>>>>>>>>> * at java.lang.reflect.Method.invoke(Method.java:606)*
>>>>>>>>> * at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:126)*
>>>>>>>>> * ... 50 more*
>>>>>>>>> * {module/issuetracker/saveConfig.jag}*
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Following is the code segment in saveConfig.jag, which is
>>>>>>>>> responsible for calling the osgi service.
>>>>>>>>>
>>>>>>>>> try{
>>>>>>>>>
>>>>>>>>>     context.startTenantFlow();
>>>>>>>>>     context.getThreadLocalCarbonContext().setTenantId(tenantId);
>>>>>>>>>     
>>>>>>>>> context.getThreadLocalCarbonContext().setTenantDomain(tenantDomain);
>>>>>>>>>     
>>>>>>>>> server.osgiService('org.wso2.carbon.appfactory.issuetracking.service.IssueTrackerService').createProject("applicationName",
>>>>>>>>>  issueTrackerConfig);
>>>>>>>>> }catch(e){
>>>>>>>>>     log.error(e);
>>>>>>>>> }finally{
>>>>>>>>>     context.endTenantFlow();
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> It would be really helpful, if someone can help me to overcome
>>>>>>>>> this problem.
>>>>>>>>>
>>>>>>>>> Thanks.
>>>>>>>>> Regards,
>>>>>>>>> Dilhasha
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> *M.N.F. Dilhasha*
>>>>>>>>> Software Engineering Intern | *WSO2 Lanka*
>>>>>>>>>
>>>>>>>>> email   :
>>>>>>>>> *[email protected] <[email protected]>*mobile : +94 77 8449321
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> Dev mailing list
>>>>>>>>> [email protected]
>>>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> *Mahesh Chinthaka Vidanagama* | Software Engineer
>>>>>>>> WSO2, Inc | lean. enterprise. middleware.
>>>>>>>> #20, Palm Grove, Colombo 03, Sri Lanka
>>>>>>>> Mobile: +94 71 63 63 083 | Work: +94 112 145 345
>>>>>>>> Email: [email protected] | Web: www.wso2.com
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Dev mailing list
>>>>>>> [email protected]
>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> *Mahesh Chinthaka Vidanagama* | Software Engineer
>>>>> WSO2, Inc | lean. enterprise. middleware.
>>>>> #20, Palm Grove, Colombo 03, Sri Lanka
>>>>> Mobile: +94 71 63 63 083 | Work: +94 112 145 345
>>>>> Email: [email protected] | Web: www.wso2.com
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> *Mahesh Chinthaka Vidanagama* | Software Engineer
>>>> WSO2, Inc | lean. enterprise. middleware.
>>>> #20, Palm Grove, Colombo 03, Sri Lanka
>>>> Mobile: +94 71 63 63 083 | Work: +94 112 145 345
>>>> Email: [email protected] | Web: www.wso2.com
>>>>
>>>
>>>
>>
>
>
> --
> *Mahesh Chinthaka Vidanagama* | Software Engineer
> WSO2, Inc | lean. enterprise. middleware.
> #20, Palm Grove, Colombo 03, Sri Lanka
> Mobile: +94 71 63 63 083 | Work: +94 112 145 345
> Email: [email protected] | Web: www.wso2.com
>
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to