I’m working on Bonita BPM Studio with community version.
My process create a bug on a bugzilla server via an API that I’ve coded myself.
But when my process when it arrives at the task who create a bug, it not working because :
org.bonitasoft.engine.commons.exceptions.SBonitaRuntimeException: javax.xml.parsers.FactoryConfigurationError: Provider for javax.xml.parsers.SAXParserFactory cannot be found
My API doesn’t use javax jar… In fact I don’t understand this exception.
Then I’ve added in Developpement >>> Manage jars javax jar but it not working.
Then I’ve added this jar in process dependencies but it not working.
Then I’ve added it too in application dependencies but it not working.
Then I’ve added it in C:\BonitaBPMCommunity-6.4.1\workspace\tomcat\webapps\bonita\WEB-INF\lib but it not working…
Few weeks ago, it seems you had the same problem but resolved it by adding the .jar in application dependencies, right? You can try to use the option Refresh connector repository from the Development menu in the studio.
If you are using JDK>=1.6, we don’t need to add any javax jar as they are part of JDK. You may verify once if there are any custom dependent jars that are added to your process conflicting with JDK SaxFactory classes.
Hi Haris and Halla and thank you for your responses.
@haris, that’s true but since yesterday, it not working with jar in applications’s dependencies because there is a conflict with many parser.
Yeah, this problem happens when there are many instances of SAX parser.
I’m using a JRE 1.7 and not a JDK… how can I to run Bonita BPM Studio on JDK 1.7 ?
I’ve solved half of problem : In my case I’ve developped an API who parse xml file and return me a list of Element. With this list I load a List Widget in a form.
This API need of JDOM2 who contain a SAX Parser.
The problem is :
I. when I put my jar API in application’s dependencies and JDOM2 in developpement >> manage jars, all works fine in Bonita BPM Studio but when I export bar file to deploy it in JBoss server it not working because it don’t resolve my jar API.
II. Then I delete my jar API from API applications’s dependencies and I put it in process’s dependencies always with JDOM in “manage jars”. Now it works well in Bonita BPM Studio but when I export bar file in JBoss, it not working because it don’t resolve JDom2
III. Then when I put JDOM in process’dependencies, I get a problem because there is a conflit cause of instanciation of more than once Sax Parser.
Have you understand my problem ? Sorry again form my bad english but I need some help please to solve this issue.
I’ve solved issue and now I understand more about how Bonita BPM run his dependencies.
In fact, JDOM2 API contains a SAX Parser and Bonita has his own SAX Parser, if there are more than once instance of SAX Parser Bonita BPM Engine threw an Exception. Because at the start of Bonita BPM Engine, classLoader load all classes needed by Engine including a SAX Parser for Bonita BPM and when my process is running, ClassLoader load an other SAX Parser (JDOM2 for my process) and at this moment Bonita BPM Engine threw an exception like ClassCastException.
The solution is to see in this case JDOM2 like a dependencie of Tomcat Server and not like a dependencie of Bonita process. To do this, add the jar in Tomcat’s classpath (Bonita BPM Studio):
Just enjoy now ! And if you want to deploy your bar file, just export it from Bonita BPM Studio and install it on Tomcat bundle. And add the jar in this directory :
tomcat_bundle_Home\webapps\bonita\WEB-INF\lib
Enjoy again !
But, i don’t know where to install this jar on JBoss bundle, someone knows please ?
Bonitasoft empowers development teams with Bonita, the open-source and extensible platform to solve the most demanding process automation use cases. The Bonita platform accelerates delivery of complex applications with clear separation between capabilities for visual programming and for coding. Bonita integrates with existing solutions, orchestrates heterogeneous systems, and provides deep visibility into processes across the organization.