[jBPM] - jBPM Services
by Maciej Swiderski
Maciej Swiderski [https://community.jboss.org/people/swiderski.maciej] modified the document:
"jBPM Services "
To view the document, visit: https://community.jboss.org/docs/DOC-19754
--------------------------------------------------------------
This document focus is to describe a service layer on top of the jBPM5 runtime
+*Following content is just for discussion purpose and everyone is invited to leave comments, ideas, requirements.*+
Couple of initial thoughts on what should be available. First of all I think that there is a need for different kinds of services:
updated diagram to include recent comments
https://community.jboss.org/servlet/JiveServlet/showImage/19229/jbpm-serv... https://community.jboss.org/servlet/JiveServlet/downloadImage/19229/jbpm-...
* transport layer - responsible for providing access to the services remotely over different transports
* business services - most obvious provides straight operations understandable from business point of view like startProcess, signalProcess, addData/Variable but it does not limit to processes it should provide ht services too
* session services - way of controlling and altering session and its configuration
* knowledge service - way of controlling and altering knowledge base
These services are built one on another where knowledge services are at the bottom and business services on top. That means upstream services rely on downstream services.
*Business services* are more like an extension to what we have available over REST API but completely isolated from the transport specifics. It just provides POJO services that can be used both locally and remotely with well defined data structures that it accepts and return. downstream services will get injected into business services to perform operations.
*Session services* are mainly dedicated to manage sessions, in two aspects:
1. Configuration - provide an easy way of configuring session management that covers session settings itself (persistence, handlers, listeners, etc) as well as life cycle of it (when to dispose, when to reload) and support for multi session configuration.
2. Runtime - allows to operate on the session - in most of the cases session API should be enough here
Configuration
* register handlers
* add/remove event listeners
* set configuration properties
* etc
Runtime
* executing commands
* insert/update/retract facts
* fire rules
* query working memory
* etc
*Knowledge services*
responsible for providing business assets into the runtime, so it is mainly configuration related services. adding removing assets, reconfiguring knowledge agent if is used, etc
As one of the consumers of these services is console, it could be good to be able to use console not only to simple start/signal process and complete tasks but as well (based on user roles) maintain the environment - knowledge base, sessions etc.
--------------------------------------------------------------
Comment by going to Community
[https://community.jboss.org/docs/DOC-19754]
Create a new document in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=102&c...]
12 years, 5 months
[jBPM] - Required Skills and Knowledge to Build Application with JBPM
by Sadiroveski S
Sadiroveski S [https://community.jboss.org/people/sadiroveski] created the discussion
"Required Skills and Knowledge to Build Application with JBPM"
To view the discussion, visit: https://community.jboss.org/message/753770#753770
--------------------------------------------------------------
Hello,
I want to build a full application using JBPM and Drools. I want to know what kind of people do I need to design and implement the project i.e. Competencies and skills of those people (JSP, GWT, JBOSS AS, Spring, Web services, Drools for Business rules....).
Can we do a medium project without using the eclipse, or make some java code?? Where we need an expert in Java Code.
The requirement of the project is:
* Design the Processes
* Design Forms
* Link the Forms data to a database
* Write the business rules and connect them to process
* Building a Web Application (Like the JBPM Console) to start, delegate and stop a process. Also to analyze old data (To look at the jbpm database and query data)
Best Regards,
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/753770#753770]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 5 months
[jBPM] - jBPM 5.3 Deployment on Amazon EC2 instance
by user111
user111 [https://community.jboss.org/people/user111] created the discussion
"jBPM 5.3 Deployment on Amazon EC2 instance"
To view the discussion, visit: https://community.jboss.org/message/753815#753815
--------------------------------------------------------------
Hi, I've downloaded the jbpm-5.3.0.Final-installer-full.zip and have got it working fine on my localhost.
I'm now trying to deploy it on an Amazon EC2 Centos instance and having no end of problems. Amazon EC2 is a NAT'd server, so the actual IP on the server is different to the IP accessible from the Internet.
I'm trying to get the JBPM-console working correctly. I can see the console and launch processes, but tasks never arrive for the users. Keep getting stack traces which I can share if required.
So, the things I've tried on the Final installer are:
1) Modify build.xml so that the bind address is the NAT'd IP address on the server's primary interface.
2) In standalone.xml I've changed the management and public addresses from localhost to 0.0.0.0 (Listen on all interfaces)
3) Then 'ant install.demo' to push the changes
It is now accessible from the Internet and I can access drools-guvnor, jbpm-console etc.
Here are the listening ports:
[root@myinst2 data]# lsof -i -Pn|grep java|grep -i listen
java 29475 root 7r IPv4 1416067 0t0 TCP *:9092 (LISTEN)
java 29536 root 161u IPv4 1416083 0t0 TCP *:9999 (LISTEN)
java 29536 root 163u IPv4 1416084 0t0 TCP 10.240.217.46:8080 (LISTEN)
java 29536 root 166u IPv4 1416085 0t0 TCP *:9990 (LISTEN)
java 29536 root 170u IPv4 1416087 0t0 TCP *:1090 (LISTEN)
java 29536 root 171u IPv4 1416088 0t0 TCP *:1091 (LISTEN)
java 29536 root 799u IPv4 1416111 0t0 TCP 127.0.0.1:5445 (LISTEN)
So what is the subtle difference between having a working JBPM-console on localhost vs live on the Internet?
I tried modifying the war file for the jbpm-console as advised here: http://docs.jboss.org/jbpm/v5.3/userguide/ch.console.html#d0e4624 http://docs.jboss.org/jbpm/v5.3/userguide/ch.console.html#d0e4624 but then JBPM-console wouldn't even start. All I did was add the NAT'd IP address for bpm.console.server.host=<NAT IP address> in WEB-INF/classes/jbpm.console.properties.
Any advice on how to deploy JBPM 5.3 on a Cloud server (using NAT - like they all do) would be appreciated.
Geoff.
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/753815#753815]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 5 months
[JBoss Messaging] - Thread leakage in long run in JMS messaging
by Bhaskar Ethirajulu
Bhaskar Ethirajulu [https://community.jboss.org/people/bhaskar1212] created the discussion
"Thread leakage in long run in JMS messaging"
To view the discussion, visit: https://community.jboss.org/message/753941#753941
--------------------------------------------------------------
Hi,
Our application has around 10 Java modules. We are using JBOSS App server and JMS messaging for synchronous and asynchronous intercommunication between these modules.
The thread threshold we maintained for our application is 600. But when we do longrun on the application for 2 to 3 days without doing any stress test the thread count has been slowly increasing to more than 1000. The order of thread leakage is unpredictable.
When we run Jstack on the bin location of jdk path we are able to see around 450 threads which are alive and occured during JMS messaging. Please find below the origination of the thread messge.
Please find below the thread origination messages.
Thread 29704: (state = IN_NATIVE)
- java.net.SocketInputStream.socketRead0(java.io.FileDescriptor, byte[], int, int, int) @bci=0 (Interpreted frame)
- java.net.SocketInputStream.read(byte[], int, int) @bci=84, line=129 (Interpreted frame)
- java.net.SocketInputStream.read() @bci=23, line=182 (Interpreted frame)
- java.io.FilterInputStream.read() @bci=4, line=66 (Compiled frame)
- org.jboss.remoting.transport.bisocket.BisocketServerInvoker$ControlConnectionThread.run() @bci=18, line=741 (Interpreted frame)
Can any one please respond quickly on this. This has to be fixed before moving it to production.
Thanks,
Bhaskar.
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/753941#753941]
Start a new discussion in JBoss Messaging at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 5 months
[Beginner's Corner] - JBoss AS 7.1.x: org.jboss.security.ignoreHttpsHost
by Doug Martin
Doug Martin [https://community.jboss.org/people/doug.j.martin] created the discussion
"JBoss AS 7.1.x: org.jboss.security.ignoreHttpsHost"
To view the discussion, visit: https://community.jboss.org/message/753703#753703
--------------------------------------------------------------
I'm attempting to secure a web service using TSL/SSL over HTTPS with +JBoss AS 7.1.1.Final.+ When I run a client against the test web service I get the following exception:
Caused by: java.io.IOException: The https URL hostname does not match the Common Name (CN) on the server certificate. To disable this check (NOT recommended for production) set the CXF client TLS configuration property "disableCNCheck" to true.
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.onFirstWrite(HTTPConduit.java:1339)
at org.apache.cxf.io.AbstractWrappedOutputStream.write(AbstractWrappedOutputStream.java:42)
at org.apache.cxf.io.AbstractThresholdOutputStream.write(AbstractThresholdOutputStream.java:69)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1414)
... 12 more
I've seen where in versions up to AS 5 where you can set the 'org.jboss.security.ignoreHttpsHost' environment variable during development to disable this check, but it doesn't appear to work for AS 7.
Is this still applicable? Is there a better way or other work arounds to accomplish the same behavior?
Thanks in advance,
Doug
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/753703#753703]
Start a new discussion in Beginner's Corner at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 5 months