[Persistence, JBoss/CMP, Hibernate, Database] - LEFT JOIN Problem
by toni
Hi,
I have two entities: Email and Person. Each Email entity is referencing a Person entity, but each Person entity is unaware of that.
I'm looking for an EJB QL statement, which will return for each Person how many Email Entities reference it. Or how many emails a Person has written.
I have a hard time coming up with a QL statement, because Person is not referencing back to Email, so I have no collection field to reference in a LEFT JOIN. Of course I could introduce one and the problem would be solved, but I'm trying to learn how do do this without one.
I have tried the following statements, but they all return 0 rows:
// I'am not sure if this is correct, because I'm joining on the emails. So if I have no emails for a person, then those person are excluded, I guess.
Select pe, count(a) FROM Email e LEFT JOIN e.person AS pe GROUP BY pe.id;
// So that's why I'm trying to join on the Person by pulling it into the equation, but I'm not sure, if this will actually join each Email on each Person?!
Select pe, count(e) FROM Person p, Email e JOIN e.person AS pe GROUP BY pe.id;
What ist the correct QL statement for this problem?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3995264#3995264
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3995264
19 years, 7 months
[EJB/JBoss] - Re: Deployment failing-How to get debug information ?
by chrismm
OK, here goes :-
2006-12-20 11:01:46,269 DEBUG [javax.management.timer.Timer] start: jboss.jmx:name=SnmpAgent,service=timer,type=heartbeat at Wed Dec 20 11:01:46 GMT 2006
2006-12-20 11:01:50,660 INFO [org.apache.catalina.startup.Embedded] Catalina naming disabled
2006-12-20 11:01:50,738 INFO [org.apache.catalina.startup.ClusterRuleSetFactory] Unable to find a cluster rule set in the classpath. Will load the default rule set.
2006-12-20 11:01:50,738 INFO [org.apache.catalina.startup.ClusterRuleSetFactory] Unable to find a cluster rule set in the classpath. Will load the default rule set.
2006-12-20 11:01:51,176 INFO [org.apache.coyote.http11.Http11BaseProtocol] Initializing Coyote HTTP/1.1 on http-0.0.0.0-8880
2006-12-20 11:01:51,176 INFO [org.apache.catalina.startup.Catalina] Initialization processed in 438 ms
2006-12-20 11:01:51,176 INFO [org.apache.catalina.core.StandardEngine] Starting Servlet Engine: Apache Tomcat/5.5.17
2006-12-20 11:01:51,238 INFO [org.apache.catalina.core.StandardHost] XML validation disabled
2006-12-20 11:01:51,270 INFO [org.apache.catalina.startup.Catalina] Server startup in 94 ms
2006-12-20 11:01:51,879 INFO [org.apache.catalina.loader.WebappLoader] Dual registration of jndi stream handler: factory already defined
2006-12-20 11:01:59,567 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Initializing configuration from resource path /WEB-INF/struts-config.xml
2006-12-20 11:01:59,582 INFO [STDOUT] register('-//Apache Software Foundation//DTD Struts Configuration 1.0//EN', 'jar:file:/C:/tools/jboss-4.0.4.GA/server/MerlinServer/tmp/deploy/tmp27918jboss-profiler-exp.war/WEB-INF/lib/struts.jar!/org/apache/struts/resources/struts-config_1_0.dtd'
2006-12-20 11:01:59,582 INFO [STDOUT] register('-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN', 'jar:file:/C:/tools/jboss-4.0.4.GA/server/MerlinServer/tmp/deploy/tmp27918jboss-profiler-exp.war/WEB-INF/lib/struts.jar!/org/apache/struts/resources/web-app_2_2.dtd'
2006-12-20 11:01:59,598 INFO [STDOUT] register('-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN', 'jar:file:/C:/tools/jboss-4.0.4.GA/server/MerlinServer/tmp/deploy/tmp27918jboss-profiler-exp.war/WEB-INF/lib/struts.jar!/org/apache/struts/resources/web-app_2_3.dtd'
2006-12-20 11:01:59,598 INFO [STDOUT] resolveEntity('-//Apache Software Foundation//DTD Struts Configuration 1.0//EN', 'http://jakarta.apache.org/struts/dtds/struts-config_1_0.dtd')
2006-12-20 11:01:59,598 INFO [STDOUT] Resolving to alternate DTD 'jar:file:/C:/tools/jboss-4.0.4.GA/server/MerlinServer/tmp/deploy/tmp27918jboss-profiler-exp.war/WEB-INF/lib/struts.jar!/org/apache/struts/resources/struts-config_1_0.dtd'
2006-12-20 11:01:59,614 INFO [STDOUT] New org.apache.struts.action.ActionFormBean
2006-12-20 11:01:59,614 INFO [STDOUT] Set org.apache.struts.action.ActionFormBean properties
2006-12-20 11:01:59,629 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addFormBean(ActionFormBean[filterForm])
2006-12-20 11:01:59,629 INFO [STDOUT] Pop org.apache.struts.action.ActionFormBean
2006-12-20 11:01:59,629 INFO [STDOUT] New org.apache.struts.action.ActionForward
2006-12-20 11:01:59,645 INFO [STDOUT] Set org.apache.struts.action.ActionForward properties
2006-12-20 11:01:59,645 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addForward(ActionForward[erro])
2006-12-20 11:01:59,645 INFO [STDOUT] Pop org.apache.struts.action.ActionForward
2006-12-20 11:01:59,645 INFO [STDOUT] New org.apache.struts.action.ActionForward
2006-12-20 11:01:59,645 INFO [STDOUT] Set org.apache.struts.action.ActionForward properties
2006-12-20 11:01:59,645 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addForward(ActionForward[home])
2006-12-20 11:01:59,645 INFO [STDOUT] Pop org.apache.struts.action.ActionForward
2006-12-20 11:01:59,660 INFO [STDOUT] New org.apache.struts.action.ActionMapping
2006-12-20 11:01:59,660 INFO [STDOUT] Set org.apache.struts.action.ActionMapping properties
2006-12-20 11:01:59,660 INFO [STDOUT] New org.apache.struts.action.ActionForward
2006-12-20 11:01:59,660 INFO [STDOUT] Set org.apache.struts.action.ActionForward properties
2006-12-20 11:01:59,660 INFO [STDOUT] Call org.apache.struts.action.ActionMapping.addForward(ActionForward[selectPID])
2006-12-20 11:01:59,676 INFO [STDOUT] Pop org.apache.struts.action.ActionForward
2006-12-20 11:01:59,676 INFO [STDOUT] New org.apache.struts.action.ActionForward
2006-12-20 11:01:59,676 INFO [STDOUT] Set org.apache.struts.action.ActionForward properties
2006-12-20 11:01:59,676 INFO [STDOUT] Call org.apache.struts.action.ActionMapping.addForward(ActionForward[errorSelection])
2006-12-20 11:01:59,676 INFO [STDOUT] Pop org.apache.struts.action.ActionForward
2006-12-20 11:01:59,676 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addMapping(ActionMapping[path=/filter, type=org.jboss.profiler.web.actions.FilterAction])
2006-12-20 11:01:59,676 INFO [STDOUT] Pop org.apache.struts.action.ActionMapping
2006-12-20 11:01:59,676 INFO [STDOUT] register('-//Apache Software Foundation//DTD Struts Configuration 1.0//EN', 'jar:file:/C:/tools/jboss-4.0.4.GA/server/MerlinServer/tmp/deploy/tmp27918jboss-profiler-exp.war/WEB-INF/lib/struts.jar!/org/apache/struts/resources/struts-config_1_0.dtd'
2006-12-20 11:01:59,692 INFO [STDOUT] register('-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN', 'jar:file:/C:/tools/jboss-4.0.4.GA/server/MerlinServer/tmp/deploy/tmp27918jboss-profiler-exp.war/WEB-INF/lib/struts.jar!/org/apache/struts/resources/web-app_2_2.dtd'
2006-12-20 11:01:59,692 INFO [STDOUT] register('-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN', 'jar:file:/C:/tools/jboss-4.0.4.GA/server/MerlinServer/tmp/deploy/tmp27918jboss-profiler-exp.war/WEB-INF/lib/struts.jar!/org/apache/struts/resources/web-app_2_3.dtd'
2006-12-20 11:01:59,692 INFO [STDOUT] resolveEntity('-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN', 'http://java.sun.com/j2ee/dtds/web-app_2_2.dtd')
2006-12-20 11:01:59,692 INFO [STDOUT] Resolving to alternate DTD 'jar:file:/C:/tools/jboss-4.0.4.GA/server/MerlinServer/tmp/deploy/tmp27918jboss-profiler-exp.war/WEB-INF/lib/struts.jar!/org/apache/struts/resources/web-app_2_2.dtd'
2006-12-20 11:01:59,707 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addServletMapping(memoryServlet/java.lang.String,/memory/java.lang.String)
2006-12-20 11:01:59,707 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Process servletName=memoryServlet, urlPattern=/memory
2006-12-20 11:01:59,707 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addServletMapping(chartview/java.lang.String,/chartview/java.lang.String)
2006-12-20 11:01:59,707 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Process servletName=chartview, urlPattern=/chartview
2006-12-20 11:01:59,707 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addServletMapping(action/java.lang.String,/do/*/java.lang.String)
2006-12-20 11:01:59,707 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Process servletName=action, urlPattern=/do/*
2006-12-20 11:01:59,723 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addServletMapping(download/java.lang.String,/download/*/java.lang.String)
2006-12-20 11:01:59,723 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Process servletName=download, urlPattern=/download/*
2006-12-20 11:01:59,723 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addServletMapping(excel/java.lang.String,/excel/*/java.lang.String)
2006-12-20 11:01:59,723 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Process servletName=excel, urlPattern=/excel/*
2006-12-20 11:01:59,723 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addServletMapping(graphMemoryServer/java.lang.String,/graphMemoryServer/java.lang.String)
2006-12-20 11:01:59,723 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Process servletName=graphMemoryServer, urlPattern=/graphMemoryServer
2006-12-20 11:01:59,723 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addServletMapping(graphServer/java.lang.String,/graphServer/java.lang.String)
2006-12-20 11:01:59,723 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Process servletName=graphServer, urlPattern=/graphServer
2006-12-20 11:01:59,739 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addServletMapping(JBPProcess/java.lang.String,/JBPProcess/java.lang.String)
2006-12-20 11:01:59,739 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Process servletName=JBPProcess, urlPattern=/JBPProcess
2006-12-20 11:01:59,739 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addServletMapping(JBTTransaction/java.lang.String,/JBTTransaction/java.lang.String)
2006-12-20 11:01:59,739 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Process servletName=JBTTransaction, urlPattern=/JBTTransaction
2006-12-20 11:01:59,739 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addServletMapping(upload/java.lang.String,/upload/*/java.lang.String)
2006-12-20 11:01:59,739 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Process servletName=upload, urlPattern=/upload/*
2006-12-20 11:01:59,739 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addServletMapping(uploadFile/java.lang.String,/uploadFile/java.lang.String)
2006-12-20 11:01:59,739 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Process servletName=uploadFile, urlPattern=/uploadFile
2006-12-20 11:01:59,754 INFO [STDOUT] Call org.apache.struts.action.ActionServlet.addServletMapping(xmlConsolidated/java.lang.String,/xml/*/java.lang.String)
2006-12-20 11:01:59,754 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Process servletName=xmlConsolidated, urlPattern=/xml/*
2006-12-20 11:01:59,754 INFO [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jboss-profiler]] action: Mapping for servlet 'action' = '/do/*'
2006-12-20 11:02:26,380 ERROR [org.jboss.deployment.MainDeployer] Could not create deployment: file:/C:/tools/jboss-4.0.4.GA/server/MerlinServer/tmp/deploy/tmp27919merlin.ear-contents/tradableproductEJB.jar
org.jboss.deployment.DeploymentException: Verification of Enterprise Beans failed, see above for error messages. at org.jboss.ejb.EJBDeployer.create(EJBDeployer.java:610)
at sun.reflect.GeneratedMethodAccessor89.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
at org.jboss.mx.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:97)
at org.jboss.system.InterceptorServiceMBeanSupport.invokeNext(InterceptorServiceMBeanSupport.java:238)
at org.jboss.ws.server.WebServiceDeployer.create(WebServiceDeployer.java:99)
at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.create(SubDeployerInterceptorSupport.java:180)
at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:91)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at $Proxy32.create(Unknown Source)
at org.jboss.deployment.MainDeployer.create(MainDeployer.java:953)
at org.jboss.deployment.MainDeployer.create(MainDeployer.java:943)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:807)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:771)
at sun.reflect.GeneratedMethodAccessor17.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at $Proxy6.deploy(Unknown Source)
at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421)
at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:634)
at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263)
at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:336)
at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
at $Proxy0.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:417)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at $Proxy4.start(Unknown Source)
at org.jboss.deployment.SARDeployer.start(SARDeployer.java:302)
at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1007)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:808)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:771)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:755)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at $Proxy5.deploy(Unknown Source)
at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:482)
at org.jboss.system.server.ServerImpl.start(ServerImpl.java:362)
at org.jboss.Main.boot(Main.java:200)
at org.jboss.Main$1.run(Main.java:464)
at java.lang.Thread.run(Thread.java:534)
2006-12-20 11:02:26,489 ERROR [org.jboss.deployment.scanner.URLDeploymentScanner] Incomplete Deployment listing:
--- Incompletely deployed packages ---
org.jboss.deployment.DeploymentInfo@9bfd6489 { url=file:/C:/tools/jboss-4.0.4.GA/server/MerlinServer/deploy/merlin.ear }
deployer: org.jboss.deployment.EARDeployer@1b1fbf4
status: Deployment FAILED reason: Verification of Enterprise Beans failed, see above for error messages.
state: FAILED
watch: file:/C:/tools/jboss-4.0.4.GA/server/MerlinServer/deploy/merlin.ear
altDD: null
lastDeployed: 1166612534926
lastModified: 1166612520285
mbeans:
2006-12-20 11:02:26,552 INFO [org.apache.coyote.http11.Http11BaseProtocol] Starting Coyote HTTP/1.1 on http-0.0.0.0-8880
2006-12-20 11:02:26,677 INFO [org.apache.jk.common.ChannelSocket] JK: ajp13 listening on /0.0.0.0:8009
2006-12-20 11:02:26,708 INFO [org.apache.jk.server.JkMain] Jk running ID=0 time=0/63 config=null
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3995260#3995260
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3995260
19 years, 7 months
[JBoss jBPM] - Re: BAM for jBPM
by kukeltje
Charles,
I'll try to draw up a more detailed response later this week, but I have at least one question for now. I see in the pictures that you have to define when data is send to seewhy. This could be either a node or an action on a node I presume. But what about the other way around? A long time ago, when we were in the process of selecting an non-foss bpm solution, we looked at one of the BEA products (don't know which anymore since they seem to switch names and implementations more often than M$ has done with dll/com/dcom/activex/.....) They had limited BAM/BI functionality and for that they partnered with a company that retrieved data from the database on a reqular (every x seconds). It had knowledge of the structure and we were told by visiting a satisfied user of that product that this had no major impact on DB performance.
This way, you do not have to change the process when you want to monitor other steps etc.... Any comments on this?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3995259#3995259
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3995259
19 years, 7 months
[JBoss jBPM] - BAM for jBPM
by charlesmnicholls
I'm looking for jBPM users that would like to share their experiences and requirements for adding Business Intelligence and Business Activity Monitoring as a complement to jBPM. We're are building templates and tight integration with jBPM and would like help in prioritizing our roadmap for the SeeWhy Community Edition. Help here means giving us advice, but you can get more involved if you wish.
You can find more details about this direction at www.seewhy.com/jboss
This capability adds:
* Analysis triggered processes: build ?smarts' into processes by monitoring events
* Real time alerts at process runtime
* Business Activity Monitoring (BAM): visibility of processes executing in real time
If you're willing to participate, and would be happy to share your thoughts and needs please email me at cloudburst(a)seewhy.com
In advance, thanks for your help
Charles
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3995250#3995250
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3995250
19 years, 7 months
[JBoss jBPM] - Design Question
by mjuteau
The sample startup kit webapp uses a single, highly dynamic screen to display any task, and any associated form fields and buttons/transitions. Is this the way to go on large business apps? Should the workflow engine drive the entire UI?
How would we handle more complex UI problems such as different page layouts, pagination, form validation rules, client side stuff (Ajax, etc), navigation, etc - all of this from a single dynamic screen?
I tried a more conventional approach, where tasks would be mapped to their respective custom screens. However it seems that a task definition, as modeled in the XML graph file, does not have an identifier, other than its 'name' property (a task instance, of course, has an identifier).
So, it seems awkward to use the 'name' for the mapping. Should I abandon this approach of mapping task definitions to specific screens? Any comments or suggestions greatly appreciated.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3995244#3995244
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3995244
19 years, 7 months
[EJB 3.0] - SLSB @RunAs does not affect SessionContext.isCallerInRole
by mnk@mnk.dk
Hi all,
I have just upgraded to JBoss AS 4.0.5GA and I am experiencing some unexpected behavior. I have two SLSB converted from EJB 2.1 XDoclet beans to EJB3:
@Stateless
| @Local(SomeLocal.class)
| @RunAs(SomeBean.SOME_ROLE)
| public class SomeBean implements SomeLocal {
|
| static final String SOME_ROLE = "someRole";
|
| @EJB
| OtherLocal otherLocal;
|
| public boolean test() {
| return otherLocal.test();
| }
|
| }
and
@Stateless
| @Local(OtherLocal.class)
| public class OtherBean implements OtherLocal {
|
| @Resource
| SessionContext context;
|
| @RolesAllowed(SomeBean.SOME_ROLE)
| public boolean test() {
| return context.isCallerInRole(SomeBean.SOME_ROLE);
| }
|
| }
I would expect that SomeLocal.test() would return true, as is the case with EJB 2.1 and JBoss 4.0.2, but instead the method returns false.
Do anyone know if this a bug in JBoss 4.0.5, or if it is working according to the spec.? As I read the spec. I think that it is a bug, but I would like a second opinion.
Regards
Mathias
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3995231#3995231
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3995231
19 years, 7 months
[Persistence, JBoss/CMP, Hibernate, Database] - Re: Getting Exception for Derby Data Source
by nicolas.jouanin
Hi Alex,
It seems that the problem doesn't come from Derby, but from a jboss class which is not found , look at the class name : org.jboss.jdbc.DerbyDatabase
One solution i've found to deploy the datasource is to comment out the two following lines in your -ds.xml file :
| <depends>jboss:service=Derby</depends>
| ...
| <mbean code="org.jboss.jdbc.DerbyDatabase" name="jboss:service=Derby"/>
|
Here is a sample -ds.xml file:
| <?xml version="1.0" encoding="UTF-8"?>
|
| <!-- The Derby embedded database JCA connection factory config
| $Id: derby-ds.xml 25345 2004-11-03 13:29:58Z loubyansky $ -->
|
|
| <datasources>
| <local-tx-datasource>
|
| <!-- The jndi name of the DataSource, it is prefixed with java:/ -->
| <!-- Datasources are not available outside the virtual machine -->
| <jndi-name>EscapeKDS</jndi-name>
|
| <!-- for in-process persistent db, saved when jboss stops. The
| org.jboss.jdbc.DerbyDatabase mbean is necessary for properly db shutdown -->
| <connection-url>jdbc:derby:${jboss.server.data.dir}${/}derby${/}localDB;create=true</connection-url>
|
| <!-- The driver class -->
| <driver-class>org.apache.derby.jdbc.EmbeddedDriver</driver-class>
|
| <!-- The login and password -->
| <user-name>sa</user-name>
| <password></password>
|
| <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
| <min-pool-size>5</min-pool-size>
|
| <!-- The maximum connections in a pool/sub-pool -->
| <max-pool-size>20</max-pool-size>
|
| <!-- The time before an unused connection is destroyed -->
| <idle-timeout-minutes>5</idle-timeout-minutes>
|
| <!-- Whether to check all statements are closed when the connection is returned to the pool,
| this is a debugging feature that should be turned off in production -->
| <track-statements/>
|
| <!-- This mbean can be used when using in process persistent derby -->
| <!--
| <depends>jboss:service=Derby</depends>
| -->
| </local-tx-datasource>
|
| <!--
| <mbean code="org.jboss.jdbc.DerbyDatabase" name="jboss:service=Derby"/>
| -->
| </datasources>
|
PS : Does someone knows where to find that org.jboss.jdbc.DerbyDatabase class, and what it does ?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3995224#3995224
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3995224
19 years, 7 months
[JBoss Seam] - Re: Basic Seam questions
by lightbulb432
I have been looking into the whole issue of Exceptions and have several questions about how to choose and design Exceptions for a Seam application. There's quite a few questions below, but hopefully somebody could address them. (I imagine all these dumb beginner questions must be getting irritating by now, but I've really appreciated all your help!)
1) Should exceptions be checked or unchecked in Seam? I'm gonna guess that all should be unchecked because isn't that the whole reason that exceptions.xml and exception annotations exist...they handle cases where the exception propagates far enough up that the rules take effect. If you declared any exception as checked, you'd have to catch it and it would never propagate and exceptions.xml wouldn't be used, right?
2) Would exceptions.xml rules also not be used for any exception that was unchecked but that you caught in every case where it possibly could be thrown?
3) Would you expect to see more checked or unchecked user-defined exceptions in a Seam application? (Or does it totally depend upon the nature of the application, meaning there aren't universal best practices on this issue?)
4) I can't tell whether my exceptions should cause a rollback or not. What criteria might help me understand this decision more clearly? For example, should an exception in a method that makes NO updates/additions/removals to the database never cause a rollback?
What about for ones that do make changes - is it ALWAYS yes for rollbacks in this case?
5) In exceptions.xml, is there a way to return a logical outcome name for a given exception (that would be defined in the navigation rules) rather than an actual view ID for a physical page? I didn't see an attribute for render and redirect that implies this case in the DTD.
6) If there were an exception and I needed to return a page indicating an error to the user, I could do one of two things: annotate the exception with an error code, then in web.xml (or wherever it is) define a custom view to be associated with that error code; OR I could simply do a @Render or @Redirect to the same view.
So then what's the difference between returning an error code and a regular view ID? In either case, what the user would see on his screen would be the same in either case, so what criteria go into choosing one over the other?
7) An example that's got me stumped is a login() action method on a session bean. It searches for the entered login name in the database. If the login name doesn't exist, it throws a user-defined exception. I realize the questions below are application-specific, but I don't even know how to go about making these choices. Perhaps you could explain what you might do in this case and why?
A) Should this be a system or application exception?
B) If application, should it be checked or unchecked with @ApplicationException annotation?
C) If application, should it be cause a rollback or not?
D) In either case, should I let it propagate or catch it?
-Wow, so confused on this!
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3995221#3995221
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3995221
19 years, 7 months
[EJB/JBoss] - Re: Executing Outside Transaction
by murtuza52
I have resolved this problem with @Version attribute. Those who are interested in knowing here is how i did it:
The counter entity bean is modified as follows:
| @Entity
| @Table(name = "counter")
| public class Counter implements Serializable{
|
| private String counterName;
|
| private long value;
|
| private int version;
|
| @Id
| public String getCounterName() {
| return counterName;
| }
|
| public void setCounterName(String name) {
| this.counterName = name;
| }
|
| public long getValue() {
| return value;
| }
|
| public void setValue(long value) {
| this.value = value;
| }
|
| @Version
| public int getVersion() {
| return version;
| }
|
| public void setVersion(int version) {
| this.version = version;
| }
| }
|
The update method is modified as follows:
| public long count(){
|
| Counter counter = manager.find(Counter.class, "methodA");
| manager.lock(counter, LockModeType.READ);
| if(counter==null)
| {
| counter = new Counter();
| counter.setCounterName(tableName);
| counter.setValue(1);
| manager.persist(counter);
| }
|
| long returnValue = counter.getValue();
| key.setNextKey(returnValue+1);
| manager.merge(counter);
| manager.flush();
| return returnValue;
| }
|
Murtuza
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3995219#3995219
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3995219
19 years, 7 months
[EJB 3.0] - Re: Help on EjB 3 Packaging
by ALRubinger
It's probably a good practice to separate out your Entity beans into their own JAR; each persistence unit is scoped to that JAR alone per the spec.
I generally like to give each of my "services" (which may be JMX, Stateful, or Stateless EJBs) its own JAR, each unique collection of Entity Beans per persistence unit its own JAR (read: if 3 persistence units, 3 JARs for Entities), and a "common" JAR for standard java classes. Then I throw all these into an EAR with a proper application.xml in META-INF, explicitly defining each of the components above.
In the end, it'll come down to whatever works best for your system, and how you plan on deploying your components (All at once, always? Lots of dependencies? Or as independent modules that may be added or removed on a whim?)
S,
ALR
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3995207#3995207
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3995207
19 years, 7 months