将OSGi服务公开为Camel端点

时间:2016-05-04 07:01:28

标签: apache-camel osgi blueprint-osgi

我甚至不知道我是否以正确的方式提出问题; - )

我基本上想要实现的是这样的:

06:35:48,042 ERROR [SqlExceptionHelper:146] An SQLException was provoked by the following failure: java.lang.InterruptedException
06:35:48,044 ERROR [RuntimePageImpl-6][ServiceHubDAOImpl:259] With HQL : select distinct I from Incident I where ceacknowledgestatus ='unacknowledged' and imticketstatus not in ('closed','C
    losed')    org.hibernate.exception.GenericJDBCException: could not prepare statement
org.hibernate.exception.GenericJDBCException: could not prepare statement
            at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:54)
            at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:126)
            at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:196)
            at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareQueryStatement(StatementPreparerImpl.java:160)
            at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1885)
            at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:1862)
            at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:1839)
            at org.hibernate.loader.Loader.doQuery(Loader.java:910)
            at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:355)
            at org.hibernate.loader.Loader.doList(Loader.java:2554)
            at org.hibernate.loader.Loader.doList(Loader.java:2540)
            at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2370)
            at org.hibernate.loader.Loader.list(Loader.java:2365)
            at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:497)
            at org.hibernate.hql.internal.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:387)
            at org.hibernate.engine.query.spi.HQLQueryPlan.performList(HQLQueryPlan.java:236)
            at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1264)
            at org.hibernate.internal.QueryImpl.list(QueryImpl.java:103)
            at com.sath.servicehub.dao.impl.ServiceHubDAOImpl.listEntries(ServiceHubDAOImpl.java:252)
            at com.sath.servicehub.services.SearchServices.getIncidentDTOList(SearchServices.java:85)
            at com.sath.servicehub.controller.IncidentController.getnOfUnacknowledgedIncidents(IncidentController.java:91)
            at sun.reflect.GeneratedMethodAccessor675.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
             at java.lang.reflect.Method.invoke(Method.java:497)
            at javax.el.BeanELResolver.getValue(BeanELResolver.java:99)
            at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
            at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
            at org.apache.el.parser.AstValue.getValue(AstValue.java:183)
            at org.apache.el.parser.AstEqual.getValue(AstEqual.java:37)
            at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184)
            at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
            at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
            at javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:458)
            at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:912)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863)
            at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
            at javax.faces.render.RendererWrapper.encodeChildren(RendererWrapper.java:95)
            at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
            at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:458)
            at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:134)
            at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
            at com.liferay.faces.bridge.application.internal.ViewHandlerCompatImpl.renderView(ViewHandlerCompatImpl.java:51)
            at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
            at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
            at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
            at com.liferay.faces.bridge.internal.BridgePhaseRenderImpl.execute(BridgePhaseRenderImpl.java:257)
            at com.liferay.faces.bridge.internal.BridgePhaseRenderImpl.execute(BridgePhaseRenderImpl.java:98)
            at com.liferay.faces.bridge.internal.BridgeImpl.doFacesRequest(BridgeImpl.java:135)
            at javax.portlet.faces.GenericFacesPortlet.doView(GenericFacesPortlet.java:258)
            at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:359)
            at javax.portlet.faces.GenericFacesPortlet.doDispatch(GenericFacesPortlet.java:207)
            at javax.portlet.GenericPortlet.render(GenericPortlet.java:262)
            at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:103)
            at com.liferay.portlet.ScriptDataPortletFilter.doFilter(ScriptDataPortletFilter.java:55)
            at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:100)
            at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:64)
            at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:112)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:119)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748)
            at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:604)
            at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:543)
            at com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:583)
            at com.liferay.portlet.InvokerPortletImpl.invokeRender(InvokerPortletImpl.java:656)
     at com.liferay.portlet.InvokerPortletImpl.render(InvokerPortletImpl.java:362)
            at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(render_005fportlet_jsp.java:1239)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:439)
            at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
            at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:119)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748)
            at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:604)
            at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:543)
            at com.liferay.portal.servlet.DirectServletPathRegisterDispatcher.include(DirectServletPathRegisterDispatcher.java:55)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
            at com.liferay.portlet.PortletContainerImpl._doRender(PortletContainerImpl.java:638)
            at com.liferay.portlet.PortletContainerImpl.render(PortletContainerImpl.java:135)
            at com.liferay.portlet.SecurityPortletContainerWrapper.render(SecurityPortletContainerWrapper.java:141)
            at com.liferay.portlet.RestrictPortletContainerWrapper.render(RestrictPortletContainerWrapper.java:126)
            at com.liferay.portal.kernel.portlet.PortletContainerUtil.render(PortletContainerUtil.java:156)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer._render(PortletRenderer.java:125)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer.access$4(PortletRenderer.java:107)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:180)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:1)
            at com.liferay.portal.kernel.executor.CopyThreadLocalCallable.call(CopyThreadLocalCallable.java:69)
            at java.util.concurrent.FutureTask.run(FutureTask.java:266)
            at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:682)
            at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:593)
            at java.lang.Thread.run(Thread.java:745)
    Caused by: java.sql.SQLException: An SQLException was provoked by the following failure: java.lang.InterruptedException
            at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:106)
            at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:65)
            at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:62)
            at com.mchange.v2.c3p0.stmt.GooGooStatementCache.acquireStatement(GooGooStatementCache.java:562)
            at com.mchange.v2.c3p0.stmt.GooGooStatementCache.checkoutStatement(GooGooStatementCache.java:168)
            at com.mchange.v2.c3p0.impl.NewPooledConnection.checkoutStatement(NewPooledConnection.java:277)
            at com.mchange.v2.c3p0.impl.NewProxyConnection.prepareStatement(NewProxyConnection.java:199)
            at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$5.doPrepare(StatementPreparerImpl.java:162)
            at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:186)
            ... 103 more
Caused by: java.lang.InterruptedException
            at java.lang.Object.wait(Native Method)
            at java.lang.Object.wait(Object.java:502)
            at com.mchange.v2.c3p0.stmt.GooGooStatementCache.acquireStatement(GooGooStatementCache.java:552)
            ... 108 more
Hibernate: select person0_.person_id as person_i1_18_0_, person0_.belongs_to_organization as belongs_2_18_0_, person0_.cellphone_number as cellphon3_18_0_, person0_.direct_phone_number as direct_p4_18_0_, person0_.do_not_email as do_not_e5_18_0_, person0_.email as email6_18_0_, person0_.extension as extensio7_18_0_, person0_.location as location8_18_0_, person0_.name as name9_18_0_, person0_.type as type10_18_0_ from person person0_ where person0_.person_id=?
 06:35:48,551 ERROR [RuntimePageImpl-6][IncidentController:96] java.lang.NullPointerException
    java.lang.NullPointerException
            at com.sath.servicehub.services.SearchServices.getIncidentDTOList(SearchServices.java:87)
            at com.sath.servicehub.controller.IncidentController.getnOfUnacknowledgedIncidents(IncidentController.java:91)
            at sun.reflect.GeneratedMethodAccessor675.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:497)
            at javax.el.BeanELResolver.getValue(BeanELResolver.java:99)
            at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
            at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
            at org.apache.el.parser.AstValue.getValue(AstValue.java:183)
            at org.apache.el.parser.AstEqual.getValue(AstEqual.java:37)
            at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184)
            at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
            at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
            at javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:458)
            at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:912)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863)
            at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
            at javax.faces.render.RendererWrapper.encodeChildren(RendererWrapper.java:95)
            at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
            at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:458)
            at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:134)
            at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
            at com.liferay.faces.bridge.application.internal.ViewHandlerCompatImpl.renderView(ViewHandlerCompatImpl.java:51)
            at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
            at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
            at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
            at com.liferay.faces.bridge.internal.BridgePhaseRenderImpl.execute(BridgePhaseRenderImpl.java:257)
            at com.liferay.faces.bridge.internal.BridgePhaseRenderImpl.execute(BridgePhaseRenderImpl.java:98)
            at com.liferay.faces.bridge.internal.BridgeImpl.doFacesRequest(BridgeImpl.java:135)
            at javax.portlet.faces.GenericFacesPortlet.doView(GenericFacesPortlet.java:258)
            at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:359)
            at javax.portlet.faces.GenericFacesPortlet.doDispatch(GenericFacesPortlet.java:207)
            at javax.portlet.GenericPortlet.render(GenericPortlet.java:262)
            at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:103)
            at com.liferay.portlet.ScriptDataPortletFilter.doFilter(ScriptDataPortletFilter.java:55)
            at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:100)
            at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:64)
            at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:112)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:119)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748)
            at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:604)
            at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:543)
            at com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:583)
            at com.liferay.portlet.InvokerPortletImpl.invokeRender(InvokerPortletImpl.java:656)
            at com.liferay.portlet.InvokerPortletImpl.render(InvokerPortletImpl.java:362)
            at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(render_005fportlet_jsp.java:1239)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:439)
            at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
            at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:119)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748)
            at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:604)
            at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:543)
            at com.liferay.portal.servlet.DirectServletPathRegisterDispatcher.include(DirectServletPathRegisterDispatcher.java:55)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
            at com.liferay.portlet.PortletContainerImpl._doRender(PortletContainerImpl.java:638)
            at com.liferay.portlet.PortletContainerImpl.render(PortletContainerImpl.java:135)
            at com.liferay.portlet.SecurityPortletContainerWrapper.render(SecurityPortletContainerWrapper.java:141)
            at com.liferay.portlet.RestrictPortletContainerWrapper.render(RestrictPortletContainerWrapper.java:126)
            at com.liferay.portal.kernel.portlet.PortletContainerUtil.render(PortletContainerUtil.java:156)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer._render(PortletRenderer.java:125)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer.access$4(PortletRenderer.java:107)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:180)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:1)
            at com.liferay.portal.kernel.executor.CopyThreadLocalCallable.call(CopyThreadLocalCallable.java:69)
            at java.util.concurrent.FutureTask.run(FutureTask.java:266)
            at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:682)
            at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:593)
            at java.lang.Thread.run(Thread.java:745)
            06:35:48,555 INFO  [RuntimePageImpl-6][IncidentController:84] getSearchServices() INSTANCE FOUND
    06:35:48,556 INFO  [RuntimePageImpl-6][ServiceHubDAOImpl:242] Inside OF listEntries(String hql) method
    Hibernate: select distinct incident0_.incident_id as incident1_11_, incident0_.ack_time as ack_time2_11_, incident0_.affectedci as affected3_11_, incident0_.alertstatus as alertsta4_11_, incident0_.application_id as applica50_11_, incident0_.area as area5_11_, incident0_.assigned_to as assigned6_11_, incident0_.assigned_to_id as assigne51_11_, incident0_.assignmentgroup as assignme7_11_, incident0_.ceacknowledgestatus as ceacknow8_11_, incident0_.cebusinessunitaffected as cebusine9_11_, incident0_.ceitocrfo as ceitocr10_11_, incident0_.cenoncidevice as cenonci11_11_, incident0_.cereportedvia as cerepor12_11_, incident0_.close_time as close_t13_11_, incident0_.closed_by_id as closed_52_11_, incident0_.closedby as closedb14_11_, incident0_.closurecode as closure15_11_, incident0_.company as company16_11_, incident0_.contact as contact17_11_, incident0_.contactfirstname as contact18_11_, incident0_.contactlastname as contact19_11_, incident0_.description as descrip20_11_, incident0_.explanation as explana21_11_, incident0_.external_id as externa22_11_, incident0_.external_url as externa23_11_, incident0_.folder as folder24_11_, incident0_.impact as impact25_11_, incident0_.imticketstatus as imticke26_11_, incident0_.incidentscol as inciden27_11_, incident0_.journalupdates as journal28_11_, incident0_.location as locatio29_11_, incident0_.open_time as open_ti30_11_, incident0_.pagingbutton as pagingb31_11_, incident0_.priority as priorit32_11_, incident0_.problemtype as problem33_11_, incident0_.query as query34_11_, incident0_.recordid as recordi35_11_, incident0_.resolutionfixtype as resolut36_11_, incident0_.service as service37_11_, incident0_.sitecategory as sitecat38_11_, incident0_.slaagreementid as slaagre39_11_, incident0_.solution as solutio40_11_, incident0_.subarea as subarea41_11_, incident0_.ticket_owner_id as ticket_53_11_, incident0_.ticketowner as ticketo42_11_, incident0_.title as title43_11_, incident0_.uniquequery as uniqueq44_11_, incident0_.updatecounter as updatec45_11_, incident0_.updated_by_id  as updated54_11_, incident0_.updatedby as updated46_11_, incident0_.updatedtime as updated47_11_, incident0_.urgency as urgency48_11_, incident0_.userpriority as userpri49_11_ from incidents incident0_ where incident0_.ceacknowledgestatus='unacknowledged' and (incident0_.imticketstatus not in  ('closed' , 'Closed'))
    06:35:48,828 INFO  [RuntimePageImpl-5][ServiceHubDAOImpl:253]  listEntries(String hql) size : 26
    06:35:49,310 INFO  [RuntimePageImpl-6][ServiceHubDAOImpl:253]  listEntries(String hql) size : 0
    06:35:49,351 INFO  [RuntimePageImpl-5][SearchServices:97] DTOLIST>SIZEE26
    06:35:49,352 INFO  [RuntimePageImpl-5][IncidentController:63] Checking for No Of open Incidents  : 26
    06:35:49,353 INFO  [RuntimePageImpl-5][ServiceHubDAOImpl:296] Inside OF listEntries(String hql) method
    Hibernate: select incident0_.assignmentgroup as col_0_0_, count(incident0_.incident_id) as col_1_0_ from incidents incident0_ where incident0_.imticketstatus not in  ('closed' , 'Closed') group by incident0_.assignmentgroup
    06:35:49,807 INFO  [RuntimePageImpl-6][SearchServices:97] DTOLIST>SIZEE0
    06:35:49,809 INFO  [RuntimePageImpl-6][IncidentController:94] Checking for No Of unacknowledged Incidents  : 0
    06:35:49,811 DEBUG [DebugPhaseListener:48] AFTER phaseId=[RENDER_RESPONSE 6] viewId=[/WEB-INF/views/unacknowledged-incident-piechart/unacknowledged-incident-piechart.xhtml]
    May 04, 2016 6:35:49 AM org.apache.catalina.core.ApplicationDispatcher invoke
    SEVERE: Servlet.service() for servlet jsp threw exception
    java.lang.NullPointerException
            at org.apache.catalina.core.ApplicationHttpRequest.getRequestURL(ApplicationHttpRequest.java:490)
            at javax.servlet.http.HttpServletRequestWrapper.getRequestURL(HttpServletRequestWrapper.java:211)
            at javax.servlet.http.HttpServletRequestWrapper.getRequestURL(HttpServletRequestWrapper.java:211)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.getURL(InvokerFilter.java:279)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:76)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748)
            at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:604)
            at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:543)
            at com.liferay.portal.servlet.DirectServletPathRegisterDispatcher.include(DirectServletPathRegisterDispatcher.java:55)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
            at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:295)
            at com.liferay.taglib.util.IncludeTag.doInclude(IncludeTag.java:192)
            at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:83)
            at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(render_005fportlet_jsp.java:1577)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:439)
            at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
            at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
            at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:119)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748)
            at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:604)
            at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:543)
            at com.liferay.portal.servlet.DirectServletPathRegisterDispatcher.include(DirectServletPathRegisterDispatcher.java:55)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
            at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
            at com.liferay.portlet.PortletContainerImpl._doRender(PortletContainerImpl.java:638)
            at com.liferay.portlet.PortletContainerImpl.render(PortletContainerImpl.java:135)
            at com.liferay.portlet.SecurityPortletContainerWrapper.render(SecurityPortletContainerWrapper.java:141)
            at com.liferay.portlet.RestrictPortletContainerWrapper.render(RestrictPortletContainerWrapper.java:126)
            at com.liferay.portal.kernel.portlet.PortletContainerUtil.render(PortletContainerUtil.java:156)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer._render(PortletRenderer.java:125)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer.access$4(PortletRenderer.java:107)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:180)
            at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:1)
            at com.liferay.portal.kernel.executor.CopyThreadLocalCallable.call(CopyThreadLocalCallable.java:69)
            at java.util.concurrent.FutureTask.run(FutureTask.java:266)
            at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:682)
            at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:593)
            at java.lang.Thread.run(Thread.java:745)

所以我想将OSGi服务作为我的路线的起点。此服务可以被其他一些捆绑包引用, fed 可以使用输入数据引用,稍后将由路由处理。

我该怎么做?

3 个答案:

答案 0 :(得分:3)

只需在camel之外创建一个OSGi服务,并以direct:anyname开头。然后,您可以将ProducerTemplate注入您的服务,并从那里调用路由。

答案 1 :(得分:2)

如果你有非常简单的方法签名,或者你想传递的参数有typeConverter,你可以使用CamelProxy在一个简单的XML配置文件中将服务链接到你的路由。

要扩展doc的示例,您可以使用以下内容:

<osgi:service id="service" ref="myProxySender"                             (4)
      interface="org.apache.camel.spring.config.MyProxySender" />

<camelContext xmlns="http://camel.apache.org/schema/spring">

    <!-- create a proxy that will route to the direct:start endpoint when invoked -->
    <proxy id="myProxySender"
           serviceInterface="org.apache.camel.spring.config.MyProxySender"
           serviceUrl="direct:start"/>

    <!-- this is the route that our proxy will routed when invoked
         and the output from this route is returned as reply on the proxy -->
    <route>
        <from uri="direct:start"/>
        <transform>
            <simple>Bye ${body}</simple>
        </transform>
    </route>

</camelContext>

答案 2 :(得分:0)

使用&#34; osgi&#34;作为Camel路由中的URI方案,您需要创建一个自定义Camel组件来处理调用相关的OSGi命令。有关详细信息,请参阅http://camel.apache.org/creating-a-new-camel-component.html

更简单的替代方法是编写使用ProducerTemplate将消息发送到Camel路由的自定义OSGi命令。可以在此处找到Karaf的示例:https://github.com/apache/karaf/tree/master/demos/command

可以通过标准的Spring配置来注入ProducerTemplate。