[Design of JBoss jBPM] - Re: Task Management component?
by kukeltje
"tom.baeyens(a)jboss.com" wrote :
| the technology we build our console in is (should be) unrelated to the technology that we offer to our jPDL users.Hmmm... what about eat your own dogfood? Maintaining multiple frameworks is not handy (e.g. what about the tasklists besides the forms)
"tom.baeyens(a)jboss.com" wrote :
| we can offer facelets to our users to build task forms if we think that is the easiest technology for our jpdl users to work with.Yes, might be true
"tom.baeyens(a)jboss.com" wrote :
| and then separately we can decide to build our console in GWT because we think we can build the greatest console in that tech.Also not against this
"tom.baeyens(a)jboss.com" wrote :
| a consequence of taking both decisions would be that we have to show facelets task forms in a GWT based console. but i don't see a problem with that. do you ?This is where I have no clue and hijacked this thread (sorry about that btw) since it probably is a problem because the exact issue I was refering to was about this and it is rejected....
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4195162#4195162
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4195162
17 years, 4 months
[Design of JBoss Profiler] - Profiler Not Recording Time
by wstrater@yahoo.com
I am having troubles getting output. I tried Beta3 and SVN revision 517.
I exported and built the code:
[webuser@bri-devweb01 tmp]$ svn export http://anonsvn.jboss.org/repos/jbossprofiler/branches/JBossProfiler2
[webuser@bri-devweb01 tmp]$ svn info http://anonsvn.jboss.org/repos/jbossprofiler/branches/JBossProfiler2
Path: JBossProfiler2
URL: http://anonsvn.jboss.org/repos/jbossprofiler/branches/JBossProfiler2
Repository Root: http://anonsvn.jboss.org/repos/jbossprofiler
Repository UUID: 98652012-b443-0410-9899-d25f17a0cfe6
Revision: 517
Node Kind: directory
Last Changed Author: jesper.pedersen
Last Changed Rev: 517
Last Changed Date: 2008-12-04 20:55:20 -0500 (Thu, 04 Dec 2008)
I copied the jars and properties to the bin directory:
[webuser@bri-devweb01 jboss-profiler]$ ls -l /usr/local/jboss/bin/jboss-profiler*
-rw-r--r-- 1 webuser webuser 61650 Dec 5 14:19 /usr/local/jboss/bin/jboss-profiler.jar
-rw-r--r-- 1 webuser webuser 5125 Dec 5 14:19 /usr/local/jboss/bin/jboss-profiler-plugins.jar
-rw-r--r-- 1 webuser webuser 486 Dec 8 10:47 /usr/local/jboss/bin/jboss-profiler.properties
[webuser@bri-devweb01 jboss-profiler]$ ls -l /usr/local/jboss/bin/javas*
-rw-r--r-- 1 webuser webuser 471005 Dec 8 09:51 /usr/local/jboss/bin/javassist.jar
[tomcat@bri-devweb01 jboss-profiler]$ ls -l /usr/local/jboss/server/default/deploy/jboss-prof*
-rw-r--r-- 1 webuser webuser 11107 Dec 5 14:25 /usr/local/jboss/server/default/deploy/jboss-profiler.sar
[webuser@bri-devweb01 jboss-profiler]$ cat /usr/local/jboss/bin/jboss-profiler.properties
enable=yes
cpu=yes
memory=yes
includes=com.company.*
excludes=*
visibility=private
save=yes
startup=yes
repository=no
remote=yes
store=memory
location=/home2/weblogs/profiler
host=localhost
port=5400
ejb=no
servlet=yes
jsf=no
jmx=no
rmi=yes
corba=no
plugin.1=org.jboss.profiler.plugins.Hibernate
plugin.2=org.jboss.profiler.plugins.Seam
[webuser@bri-devweb01 jboss-profiler]$
I update the run.conf.
[webuser@bri-devweb01 jboss-profiler]$ grep PROFILE /usr/local/jboss/bin/run.conf
PROFILER="/usr/local/jboss/bin/jboss-profiler.properties"
The following is from the console log upon startup. You can see the profiler is configured as an agent in the JAVA_OPTS.
=========================================================================
JBoss Bootstrap Environment
JBOSS_HOME: /usr/local/jboss
JAVA: /usr/local/java/bin/java
JAVA_OPTS: -Dprogram.name=run.sh -server -javaagent:/usr/local/jboss/bin/jboss-profiler.jar -Djboss-profiler.properties=/usr/local/jboss/bin/jboss-profiler.properties -Dcom.sun.management.jmxremote.port=9004 -Djava.net.preferIPv4Stack=true
CLASSPATH: /usr/local/jboss/bin/run.jar:/usr/local/java/lib/tools.jar
=========================================================================
JBOSS_HOME: /usr/local/jboss
JBoss Profiler 2.0.Beta4 (Sun Microsystems Inc. 1.5.0_03)
JBoss Profiler depends on external communication module
11:30:29,143 INFO [Server] Starting JBoss (MX MicroKernel)...
11:30:29,144 INFO [Server] Release ID: JBoss [Trinity] 4.2.3.GA (build: SVNTag=JBoss_4_2_3_GA date=200807181417)
11:30:29,146 INFO [Server] Home Dir: /usr/local/jboss-4.2.3.GA
11:30:29,146 INFO [Server] Home URL: file:/usr/local/jboss-4.2.3.GA/
11:30:29,147 INFO [Server] Patch URL: null
11:30:29,147 INFO [Server] Server Name: default
11:30:29,147 INFO [Server] Server Home Dir: /usr/local/jboss-4.2.3.GA/server/default
11:30:29,148 INFO [Server] Server Home URL: file:/usr/local/jboss-4.2.3.GA/server/default/
11:30:29,148 INFO [Server] Server Log Dir: /usr/local/jboss-4.2.3.GA/server/default/log
11:30:29,148 INFO [Server] Server Temp Dir: /usr/local/jboss-4.2.3.GA/server/default/tmp
11:30:29,148 INFO [Server] Root Deployment Filename: jboss-service.xml
11:30:29,564 INFO [ServerInfo] Java version: 1.5.0_03,Sun Microsystems Inc.
11:30:29,564 INFO [ServerInfo] Java VM: Java HotSpot(TM) Server VM 1.5.0_03-b07,Sun Microsystems Inc.
11:30:29,565 INFO [ServerInfo] OS-System: Linux 2.4.21-57.ELsmp,i386
It should be noted that /usr/local/jboss and /usr/local/jboss-profile are symbolic links to /usr/local/jboss-4.2.3.GA and /usr/local/jboss-profiler-2.0.svn-517.
The following are the entries in the JBoss console output.
[webuser@bri-devweb01 jboss-profiler]$ grep Profiler /home2/weblogs/jboss_console.log
JBoss Profiler 2.0.Beta4 (Sun Microsystems Inc. 1.5.0_03)
JBoss Profiler depends on external communication module
11:30:39,218 INFO [Profiler] JBoss Profiler: ProfilerMBean started
11:30:39,219 INFO [Communicator] JBoss Profiler: Communicator for JBoss Profiler 2.0.Beta4
11:30:39,228 INFO [Communicator] JBoss Profiler: Socket=0.0.0.0:5400
The following from the JBoss server log.
[webuser@bri-devweb01 jboss-profiler]$ grep Profiler /home2/weblogs/jboss_server.log
[webuser@bri-devweb01 jboss-profiler]$
I ran the following client commands. (The last grep is the opposite of the previous to confirm the pattern.)
[webuser@bri-devweb01 jboss-profiler]$ java -jar jboss-profiler-client.jar list
com.company.*
org.apache.jsp.*
[webuser@bri-devweb01 jboss-profiler]$ java -jar jboss-profiler-client.jar startProfiler
[webuser@bri-devweb01 jboss-profiler]$ java -jar jboss-profiler-client.jar stopProfiler
[webuser@bri-devweb01 jboss-profiler]$ java -jar jboss-profiler-client.jar listSnapshots
1: 08 December 2008 11:31:33:778 -> 08 December 2008 11:32:27:890
[webuser@bri-devweb01 jboss-profiler]$ java -jar jboss-profiler-client.jar getSnapshot 1
[webuser@bri-devweb01 jboss-profiler]$ ls -l 20081208113133778-20081208113227890
total 1224
drwxrwxr-x 2 webuser webuser 4096 Dec 8 11:32 caller
drwxrwxr-x 2 webuser webuser 405504 Dec 8 11:32 classes
-rw-rw-r-- 1 webuser webuser 404426 Dec 8 11:32 classes.txt
-rw-rw-r-- 1 webuser webuser 42 Dec 8 11:32 hotspots.txt
-rw-rw-r-- 1 webuser webuser 40 Dec 8 11:32 methods.txt
-rw-rw-r-- 1 webuser webuser 404629 Dec 8 11:32 overview.txt
-rw-rw-r-- 1 webuser webuser 33 Dec 8 11:32 packages.txt
drwxrwxr-x 2 webuser webuser 4096 Dec 8 11:32 threads
-rw-rw-r-- 1 webuser webuser 49 Dec 8 11:32 waittime.txt
[webuser@bri-devweb01 jboss-profiler]$ grep -v '0.00 ms' 20081208113133778-20081208113227890/overview.txt
>From : 08 December 2008 11:31:33:778
To : 08 December 2008 11:32:27:890
Total: 54112.00 ms
Threads:
========
Most time:
==========
Count Ms Avg % Method
Hotspots:
=========
Count Ms Avg % Method
Classes:
========
[webuser@bri-devweb01 jboss-profiler]$ grep '0.00 ms' 20081208113133778-20081208113227890/overview.txt | head
com.company.common.datastructures.Account POJO 0.00 ms
com.company.common.datastructures.Account$JaxbAccessorF_accountId POJO 0.00 ms
com.company.common.datastructures.Account$JaxbAccessorF_accountStatus POJO 0.00 ms
com.company.common.datastructures.Account$JaxbAccessorF_backendAccountIdentifier POJO 0.00 ms
com.company.common.datastructures.Account$JaxbAccessorF_backendAccountType POJO 0.00 ms
com.company.common.datastructures.Account$JaxbAccessorF_branchNumber POJO 0.00 ms
com.company.common.datastructures.Account$JaxbAccessorF_cards POJO 0.00 ms
com.company.common.datastructures.Account$JaxbAccessorF_employeeType POJO 0.00 ms
com.company.common.datastructures.AccountActionCode POJO 0.00 ms
com.company.common.datastructures.AccountId POJO 0.00 ms
[webuser@bri-devweb01 jboss-profiler]$ cat 20081208113133778-20081208113227890/methods.txt
Methods:
--------
Count Ms Avg % Method
[webuser@bri-devweb01 jboss-profiler]$
The location is empty but that is probably correct since I am using a memory store.
[webuser@bri-devweb01 jboss-profiler]$ ls -l /home2/weblogs/profiler
total 0
I use JMeter to run a test plan. You can see from the application log file that there was some activity with the classes that matches the includes entry. Also playing around with the includes does change the classes found in the snapshot report directory.
[webuser@bri-devweb01 jboss-profiler]$ grep '11:3' /home2/weblogs/jboss.log | grep commonLogic | grep EXECUTING
11:31:40,786 [ajp-0.0.0.0-9009-1] [com.company.servlets.ServletBase.commonLogic 429] VERBOSE [ ] - ***** EXECUTING CLASS: com.company.servlets.Login
11:31:50,183 [ajp-0.0.0.0-9009-1] [com.company.servlets.ServletBase.commonLogic 384] VERBOSE [ ] - ***** EXECUTING DISPATCHER: com.company.dispatchers.security.SecurityFSOCheckDispatcher
11:31:51,728 [ajp-0.0.0.0-9009-1] [com.company.servlets.ServletBase.commonLogic 384] VERBOSE [ ] - ***** EXECUTING DISPATCHER: com.company.dispatchers.login.LoginPrepareLoginDispatcher
11:31:56,088 [ajp-0.0.0.0-9009-1] [com.company.servlets.ServletBase.commonLogic 384] VERBOSE [ ] - ***** EXECUTING DISPATCHER: com.company.dispatchers.login.LoginSigninDispatcher
11:32:00,328 [ajp-0.0.0.0-9009-1] [com.company.servlets.ServletBase.commonLogic 384] VERBOSE [ ] - ***** EXECUTING DISPATCHER: com.company.dispatchers.transaction.HistoryLandingDispatcher
11:32:01,563 [ajp-0.0.0.0-9009-1] [com.company.servlets.ServletBase.commonLogic 384] VERBOSE [ ] - ***** EXECUTING DISPATCHER: com.company.dispatchers.transfer.TransferHistoryDispatcher
11:32:03,520 [ajp-0.0.0.0-9009-1] [com.company.servlets.ServletBase.commonLogic 384] VERBOSE [ ] - ***** EXECUTING DISPATCHER: com.company.dispatchers.relatedservices.HistoryDispatcher
11:32:06,353 [ajp-0.0.0.0-9009-1] [com.company.servlets.ServletBase.commonLogic 384] VERBOSE [ ] - ***** EXECUTING DISPATCHER: com.company.dispatchers.card.CardTransactionHistoryDispatcher
11:32:08,352 [ajp-0.0.0.0-9009-1] [com.company.servlets.ServletBase.commonLogic 384] VERBOSE [ ] - ***** EXECUTING DISPATCHER: com.company.dispatchers.accounts.ReviewWebsterAccountsDispatcher
11:32:10,172 [ajp-0.0.0.0-9009-1] [com.company.servlets.ServletBase.commonLogic 384] VERBOSE [ ] - ***** EXECUTING DISPATCHER: com.company.dispatchers.accountbalances.AccountBalanceDispatcher
11:32:12,138 [ajp-0.0.0.0-9009-1] [com.company.servlets.ServletBase.commonLogic 429] VERBOSE [ ] - ***** EXECUTING CLASS: com.company.servlets.Login
11:32:12,210 [ajp-0.0.0.0-9009-2] [com.company.servlets.ServletBase.commonLogic 429] VERBOSE [ ] - ***** EXECUTING CLASS: com.company.servlets.Content
11:32:13,487 [ajp-0.0.0.0-9009-1] [com.company.servlets.ServletBase.commonLogic 429] VERBOSE [ ] - ***** EXECUTING CLASS: com.company.servlets.Content
11:33:02,112 [ajp-0.0.0.0-9009-3] [com.company.servlets.ServletBase.commonLogic 429] VERBOSE [ ] - ***** EXECUTING CLASS: com.company.servlets.Login
I feel I am close but probably missing something obvious. I hope I provided enough info and would appreciate any help.
Wes.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4195161#4195161
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4195161
17 years, 4 months
[Design of JBoss jBPM] - Re: Task Management component?
by aapthorp
Tom,
Firstly in terms of the tools, in theory it should be any calendar agent that supports the iCalendar RFCs (2445,2446,2447) and also CalDav(RFC 4791) and the draft caldav sched http://en.wikipedia.org/wiki/List_of_applications_with_iCalendar_support. Of course there is variation in the level of support. In particular support for tasks (VTODO) is not yet as strong as events (VEVENT) in these tools - a workaround is to use events. I've been testing with Thunderbird/Lightning, Evolution and Kontact. Google Calendar and MS Outlook should work. Also, mobile device support for these standards is evolving.
Now to scenarios. The one you present is the basic scenario.
Other Scenarios:
Task Assignment
1) Task gets assigned to an actor
2) Actor is notified of assignment via e-mail with task invitation
3) Actor accepts / or declines task
4a) If actor accepts then proceeds as per your example scenario.
4b) If actor declines then decline message sent to server and depending on task assignment model the task can be reassigned automatically or manually.
Variation: Tasks assigned to a pool
1) Pool members are notified of opportunity to take task via e-Mail invitation.
2) First pool member who accepts invitation will send an accept message.
3) When the server receives the accept message, it will assign the task to the accepting actor and send cancellations to the remaining pool members.
Variation: Cancellation
1) Once a task has been accepted, it may be cancelled by a manager and cancellations sent to all invitees.
Scenario: View assigned tasks
Another simple scenario (for which I posted the code in JIRA some time ago) is the user can set up his task list in the calendar agent using standard HTTP get to query.
1) User queries task list via HTTP client
2) The user can then see all tasks allocated to him/her in the Calendar.
3) The user clicks on a URL in the task can link to the specific task in the JBPM console.
4) User performs task.
Scenario: View FreeBusy time for an actor
As viewing assigned tasks but a manager queries an actors tasks and is returned the free busy time for the actor (i.e. what the actors task loading is).
All of the above scenarios are also possible with CalDav (a WebDav extension). This allows individual manipulation of task entries if required; create, update and delete.
Scenario: Create ad-hoc task
1) User creates task for self or others using Calendar agent.
2) Task is created in JBPM via CalDav.
3) Invitation sent to to other actor via e-mail or CalDav. (Not Implemented)
Scenario: Initiate simple process / task (this needs more thought)
1) The user creates task in calendar agent and selects a category (process name).
2) Request sent to JBPM via CalDav.
3) Process initiated, tasks linked to parent process (not implemented).
Scenario: Task specific form embedded in calendar / task list entry (this is the question in the current thread - not implemented)
1) As per viewing task entry
2) Actor opens task form in Calendar / Task agent
3) Actor performs task and updates task form.
4) Updated task form and task details sent back to server via CalDav (could also be e-mail I guess).
5) Task updated and calendar entry refreshed.
I think that covers all the main scenarios. I have a few more in mind, but would like to get the above fairly robust. The last one being the main open one.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4195158#4195158
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4195158
17 years, 4 months