I was wondering if anyone knows about any initiative to allow any kind of technology to access rules using drools.

I red an article by Mark Proctor, that snows how one can expose the rules via web services.
This in turn would allow any application, no matter if it is java or not, to access rules via the web service but some more layers should be added, in order to allow the sender to express what rule base needs to be used, and what facts to be collected from the working memory.
I have already a mechanism in place to allow this, but was wondering if maybe there is already something out there that started this kind of initiative.



--- On Thu, 4/30/09, rules-dev-request@lists.jboss.org <rules-dev-request@lists.jboss.org> wrote:

From: rules-dev-request@lists.jboss.org <rules-dev-request@lists.jboss.org>
Subject: rules-dev Digest, Vol 28, Issue 13
To: rules-dev@lists.jboss.org
Date: Thursday, April 30, 2009, 7:09 PM

Send rules-dev mailing list submissions to
    rules-dev@lists.jboss.org

To subscribe or unsubscribe via the World Wide Web, visit
    https://lists.jboss.org/mailman/listinfo/rules-dev
or, via email, send a message with subject or body 'help' to
    rules-dev-request@lists.jboss.org

You can reach the person managing the list at
    rules-dev-owner@lists.jboss.org

When replying, please edit your Subject line so it is more specific
than "Re: Contents of rules-dev digest..."


Today's Topics:

   1. array property evaluation (Cosimo Birtolo)
   2. Problem while using RuleFlow Groups in drools (Harsh Jetly)
   3. Can drools continue testing even if one of the    conditions
      fail ? (DroolUser)
   4. Can drools comtinue testing even if one of the    conditions
      fail ? (DroolUser)
   5. Re: M2 Guvnor Tomcat Deployment Issues and Resolutions (richarda)
   6. Rule Dependency Generator (Sangrish)
   7. Re: M2 Guvnor Tomcat Deployment Issues and Resolutions (mellster)


----------------------------------------------------------------------

Message: 1
Date: Tue, 8 Jul 2008 09:36:09 +0000 (GMT)
From: Cosimo Birtolo <birtlet@yahoo.it>
Subject: [rules-dev] array property evaluation
To: rules-dev@lists.jboss.org
Message-ID: <630164.90965.qm@web26105.mail.ukl.yahoo.com>
Content-Type: text/plain; charset="utf-8"

Hi all,
I'm using drools rule with axis2 and tomcat 6.0.13 and i get this error

org.drools.RuntimeDroolsException: Exception executing predicate eval( stereotypeID[1] == "D1" )
    at org.drools.rule.PredicateConstraint.isAllowed(PredicateConstraint.java:216)
    at org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:137)
    at org.drools.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:22)
    at org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:145)
    at org.drools.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:22)
    at org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:162)
    at org.drools.reteoo.Rete.assertObject(Rete.java:175)
    at org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:192)
    at org.drools.reteoo.ReteooWorkingMemory.doInsert(ReteooWorkingMemory.java:71)
    at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:911)
    at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:883)
    at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:684)
    at sapi.adapter.ws.AdapterManager.getAdaptedEntity(AdapterManager.java:29)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:194)
    at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:98)
    at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
    at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:96)
    at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:145)
    at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
    at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:120)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    at java.lang.Thread.run(Unknown Source)
Caused by: org.mvel.PropertyAccessException: unable to resolve property: stereotypeID[1]
    at org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(ReflectiveAccessorOptimizer.java:286)
    at org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor(ReflectiveAccessorOptimizer.java:110)
    at org.mvel.ASTNode.getReducedValueAccelerated(ASTNode.java:186)
    at org.mvel.ast.BinaryOperation.getReducedValueAccelerated(BinaryOperation.java:21)
    at org.mvel.MVELRuntime.execute(MVELRuntime.java:90)
    at org.mvel.CompiledExpression.getValue(CompiledExpression.java:111)
    at org.mvel.MVEL.executeExpression(MVEL.java:235)
    at org.drools.base.mvel.MVELPredicateExpression.evaluate(MVELPredicateExpression.java:45)
    at org.drools.rule.PredicateConstraint.isAllowed(PredicateConstraint.java:209)
    ... 37 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
    at org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.getCollectionProperty(ReflectiveAccessorOptimizer.java:459)
    at org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(ReflectiveAccessorOptimizer.java:264)
    ... 45 more

import sapi.adapter.ws.EntityAdapter;
import sapi.KnowledgeManager.bean.Entity;
import sapi.KnowledgeManager.bean.UserContextStereotype;


rule "all_1.1"
    salience 10
    no-loop true
    when
        $ent : Entity();
        $ucs : UserContextStereotype(
               magnifier==true &&
               stereotypeID[1]=="D1");
    then
        $ent = EntityAdapter.resize($ent,90);
       end

I don't understand why when I start this rule under eclipse it work just fine.
If I use this application as webService I get this error.
Can anyone help me?


Thanks


      Posta, news, sport, oroscopo: tutto in una sola pagina.
Crea l'home page che piace a te!
www.yahoo.it/latuapagina
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-dev/attachments/20080708/82ef6920/attachment-0001.html

------------------------------

Message: 2
Date: Tue, 5 Aug 2008 19:47:42 -0700 (PDT)
From: Harsh Jetly <harsh.jetly@lntinfotech.com>
Subject: [rules-dev] Problem while using RuleFlow Groups in drools
To: rules-dev@lists.jboss.org
Message-ID: <18843391.post@talk.nabble.com>
Content-Type: text/plain; charset=us-ascii


Hi ,
The version of Drools that I have used is 4.0.4

I have used ruleflow groups to create my rule file.
It has a split node (XOR) in which I specify a constraint on which a
ruleflow-group is to be selected .

Insert arraylists as facts in the working memory one by one.

The problem I face is that when I insert these arraylists in the same
session , it doesn't evaluate every constraint in the split node .


The work around I am using , it that I create a new session for every
arraylist , this works just fine . But creating a new session always is an
overhead .

Can you please assist me with this situation .

Thank You

Harsh Jetly
--
View this message in context: http://www.nabble.com/Problem-while-using-RuleFlow-Groups-in-drools-tp18843391p18843391.html
Sent from the drools - dev mailing list archive at Nabble.com.



------------------------------

Message: 3
Date: Mon, 11 Aug 2008 04:38:15 -0700 (PDT)
From: DroolUser <jyotu.p@gmail.com>
Subject: [rules-dev] Can drools continue testing even if one of the
    conditions fail ?
To: rules-dev@lists.jboss.org
Message-ID: <18923764.post@talk.nabble.com>
Content-Type: text/plain; charset=us-ascii


Hi,
I'm using drools for testing if the few attributes of my MO are not null.

I construct the rule in the .drl file in following way :

rule "name"
when
        condition1
        condition2
        condition3
        condition4
then
        consequence
end

I have observed that the drool engine verifies the conditions line by line
(in the sequence they have written). The moment condition fails, control
comes back to the calling method.

I don't want this. I want the control to execute each and every condition
whether true or false and maintain a record of passed/failed conditions.
Something like this  :
rule "name"
when
        condition1
                log the test result  --- This statement should get executed
even if condition 1 fails and      control should go to condition 2
        condition2
                log the test result
        condition3
                log the test result
        condition4
                log the test result
then
        consequence
end

Is this possible in Drools ?

--
View this message in context: http://www.nabble.com/Can-drools-continue-testing-even-if-one-of-the-conditions-fail---tp18923764p18923764.html
Sent from the drools - dev mailing list archive at Nabble.com.



------------------------------

Message: 4
Date: Mon, 11 Aug 2008 04:22:49 -0700 (PDT)
From: DroolUser <jyotu.p@gmail.com>
Subject: [rules-dev] Can drools comtinue testing even if one of the
    conditions fail ?
To: rules-dev@lists.jboss.org
Message-ID: <18923764.post@talk.nabble.com>
Content-Type: text/plain; charset=us-ascii


Hi,
I'm using drools for testing if the few attributes of my MO are not null.

I construct the rule in the .drl file in following way :

rule "name"
when
        condition1
        condition2
        condition3
        condition4
then
        consequence
end

I have observed that the drool engine verifies the conditions line by line
(in the sequence they have written). The moment condition fails, control
comes back to the calling method.

I don't want this. I want the control to execute each and every condition
whether true or false and maintain a record of passed/failed conditions.
Something like this  :
rule "name"
when
        condition1
                log the test result  --- This statement should get executed
even if condition 1 fails and      control should go to condition 2
        condition2
                log the test result
        condition3
                log the test result
        condition4
                log the test result
then
        consequence
end

Is this possible in Drools ?

--
View this message in context: http://www.nabble.com/Can-drools-comtinue-testing-even-if-one-of-the-conditions-fail---tp18923764p18923764.html
Sent from the drools - dev mailing list archive at Nabble.com.



------------------------------

Message: 5
Date: Wed, 1 Oct 2008 06:46:07 -0700 (PDT)
From: richarda <richard.ambridge@gmail.com>
Subject: Re: [rules-dev] M2 Guvnor Tomcat Deployment Issues and
    Resolutions
To: rules-dev@lists.jboss.org
Message-ID: <19760807.post@talk.nabble.com>
Content-Type: text/plain; charset=us-ascii


David,
Thanks for the information..  but I get a different error when deploying to
glassfish:

WebModule[/drools-guvnor]PWC1275: Exception sending context initialized
event to listener instance of class org.jboss.seam.servlet.SeamListener
java.lang.IllegalStateException: Cannot load
WEB-INF/classes/net/sf/webdav/WebDavServletBean.class from WebappClassLoader
  delegate: true
  repositories:
    /WEB-INF/classes/
----------> Parent Classloader:
EJBClassLoader :
urlSet = []
doneCalled = false
Parent -> java.net.URLClassLoader@15b8520
(using getResourceAsStream() returned null)
        at
org.jboss.seam.deployment.AbstractDeploymentHandler.getClassFile(AbstractDeploymentHandler.java:41)
        at
org.jboss.seam.deployment.ComponentDeploymentHandler.handle(ComponentDeploymentHandler.java:57)
        at
org.jboss.seam.deployment.DeploymentStrategy.handle(DeploymentStrategy.java:177)
        at
org.jboss.seam.deployment.AbstractScanner.handleItem(AbstractScanner.java:30)
        at
org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:141)
        at
org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:137)

Any ideas for that one?

Thanks
--
View this message in context: http://www.nabble.com/M2-Guvnor-Tomcat-Deployment-Issues-and-Resolutions-tp19750352p19760807.html
Sent from the drools - dev mailing list archive at Nabble.com.



------------------------------

Message: 6
Date: Sun, 5 Oct 2008 00:29:47 -0700 (PDT)
From: Sangrish <sidangrish@gmail.com>
Subject: [rules-dev] Rule Dependency Generator
To: rules-dev@lists.jboss.org
Message-ID: <19821365.post@talk.nabble.com>
Content-Type: text/plain; charset=us-ascii


Hi

      I have been using Drools Rules Engine in our application for past
couple of weeks.
One of the requirements in our project was to let a user (anyone who is
writing/analysing the rules) find out
what other rules a given rule depends upon. There were a few kinds of
dependencies:
1) Object Attribute dependency: The attributes of an object being used in
the conditional part of a rule
   might be getting modified in the consequence part of another rule. We
wanted all such rules with each rule having its own dependency list.
2) Rule Salience based dependency. A rule having lower salience should be
executed only after a higher (if any) salience rule has already been
executed.
3) Dependency caused by a specific Rule flow. Rules in a ruleflow group
should be executed only if (if any) Split condition gets satisfied.
4) Agenda flow dependency (i.e., one agenda following another)

   We could not find much support for this in the Drools API. Hence we
decided to write our own dependency generator.  The tool we are writing
caters to first 3 dependencies. We might even handle the 4th one. 
  Since Drools is open source, we thought of contributing our bit towards
its development. If the drools team wants I can happily work with them on
getting this functionality plugged in the Drools system.


Thanks
Siddharth
--
View this message in context: http://www.nabble.com/Rule-Dependency-Generator-tp19821365p19821365.html
Sent from the drools - dev mailing list archive at Nabble.com.



------------------------------

Message: 7
Date: Tue, 4 Nov 2008 13:24:48 -0800 (PST)
From: mellster <mellster2000@yahoo.com>
Subject: Re: [rules-dev] M2 Guvnor Tomcat Deployment Issues and
    Resolutions
To: rules-dev@lists.jboss.org
Message-ID: <20331483.post@talk.nabble.com>
Content-Type: text/plain; charset=us-ascii


FYI, here are a few more hacks I had to make (after checking out the latest
from trunk) to get guvnor started on tomcat6 and j2se1.5 on WinXP

1) java.lang.NoClassDefFoundError: org/drools/ObjectFilter

It looks like this one moved to the org.drools.runtime package - duplicated
the source file into org/drools and rebuilt.

2) javax.jcr.NamespaceException: http://www.jboss.org/drools-repository/1.0
is not a registered namespace uri

Added the line

drools=http\://www.jboss.org/drools-repository/1.0

to bin/repository/repository/namespaces/ns_reg

3) jsf not found (if you're not running with J2SE instead of J2EE)

Added jsf-api and jsf-impl to the pom (runtime scope should do it)

'<dependency>
    <groupId>javax.faces</groupId>
    <artifactId>jsf-api</artifactId>
    <version>1.2_02</version>
</dependency>

<dependency>
    <groupId>javax.faces</groupId>
    <artifactId>jsf-impl</artifactId
    <version>1.2-b19</version>
</dependency>

cheers

Marco


dave sinclair wrote:
>
> Just a heads up for everyone out there. I needed to make the following
> changes to guvnor's POM in order to get the webapp to work properly on
> Tomcat. I would imagine some of these issues would appear on JBoss also
> but
> have not tried.
>
> 1. Changed seam from 2.1.0.BETA1 to 2.1.0-SNAPSHOT to prevent classloader
> problem
>
> POM Changes
>      <dependency>
>         <groupId>org.jboss.seam</groupId>
>         <artifactId>jboss-seam-remoting</artifactId>
>         <version>2.1.0-SNAPSHOT</version>
>     </dependency>
>     <dependency>
>         <groupId>org.jboss.seam</groupId>
>         <artifactId>jboss-seam</artifactId>
>         <version>2.1.0-SNAPSHOT</version>
>     </dependency>
>
> EXCEPTION without change
>
> SEVERE: Exception sending context initialized event to listener instance
> of
> class org.jboss.seam.servlet.SeamListener
> java.lang.IllegalStateException: Cannot load
> WEB-INF/classes/net/sf/webdav/exceptions/AccessDeniedException.class from
> WebappClassLoader
>   delegate: false
>   repositories:
>     /WEB-INF/classes/
> ----------> Parent Classloader:
> org.apache.catalina.loader.StandardClassLoader@c4fe76
>  (using getResourceAsStream() returned null)
>         at
> org.jboss.seam.deployment.AbstractDeploymentHandler.getClassFile(AbstractDeploymentHandler.java:41)
>         at
> org.jboss.seam.deployment.ComponentDeploymentHandler.handle(ComponentDeploymentHandler.java:57)
>         at
> org.jboss.seam.deployment.DeploymentStrategy.handle(DeploymentStrategy.java:177)
>         at
> org.jboss.seam.deployment.AbstractScanner.handleItem(AbstractScanner.java:30)
>         at
> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:141)
>         at
> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:137)
>         at
> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:137)
>         at
> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:137)
>         at
> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:137)
>         at
> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:137)
>         at
> org.jboss.seam.deployment.URLScanner.handleDirectory(URLScanner.java:137)
>         at
> org.jboss.seam.deployment.URLScanner.scanDirectories(URLScanner.java:40)
>         at
> org.jboss.seam.deployment.StandardDeploymentStrategy.scan(StandardDeploymentStrategy.java:107)
>         at
> org.jboss.seam.init.Initialization.create(Initialization.java:113)
>         at
> org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.java:34)
>         at
> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
>         at
> org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
>         at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
>         at
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
>         at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
>         at
> org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:829)
>         at
> org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:718)
>         at
> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
>         at
> org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
>         at
> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
>         at
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
>         at
> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
>         at
> org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
>         at
> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
>         at
> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
>         at
> org.apache.catalina.core.StandardService.start(StandardService.java:516)
>         at
> org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
>         at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
>         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:597)
>         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
>         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
>
> 2. Added javax.persistence to prevent ClassNotFoundException
>
> POM Changes
>
>         <dependency>
>             <groupId>javax.persistence</groupId>
>             <artifactId>persistence-api</artifactId>
>             <version>1.0</version>
>         </dependency>
>
> EXCEPTION without change
>
> SEVERE: Exception sending context initialized event to listener instance
> of
> class org.jboss.seam.servlet.SeamListener
> java.lang.RuntimeException: Could not create Component:
> org.jboss.seam.core.init
>         at
> org.jboss.seam.init.Initialization.addComponent(Initialization.java:1068)
>         at
> org.jboss.seam.init.Initialization.init(Initialization.java:614)
>         at
> org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.java:34)
>         at
> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
>         at
> org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
>         at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
>         at
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
>         at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
>         at
> org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:829)
>         at
> org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:718)
>         at
> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
>         at
> org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
>         at
> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
>         at
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
>         at
> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
>         at
> org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
>         at
> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
>         at
> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
>         at
> org.apache.catalina.core.StandardService.start(StandardService.java:516)
>         at
> org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
>         at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
>         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:597)
>         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
>         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
> Caused by: java.lang.NoClassDefFoundError: javax/persistence/Entity
>         at org.jboss.seam.Seam.getComponentType(Seam.java:109)
>         at org.jboss.seam.Component.<init>(Component.java:210)
>         at org.jboss.seam.Component.<init>(Component.java:199)
>         at
> org.jboss.seam.init.Initialization.addComponent(Initialization.java:1052)
>         ... 26 more
> Caused by: java.lang.ClassNotFoundException: javax.persistence.Entity
>         at
> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1360)
>         at
> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1206)
>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>         ... 30 more
>
> 3. Added hibernate-validator to prevent ClassNotFoundException
>
> POM Changes
>
>          <dependency>
>             <groupId>org.hibernate</groupId>
>             <artifactId>hibernate-validator</artifactId>
>             <version>3.0.0.GA</version>
>         </dependency>
>
> EXCEPTION without change
>
> SEVERE: Exception sending context initialized event to listener instance
> of
> class org.jboss.seam.servlet.SeamListener
> java.lang.RuntimeException: Could not create Component:
> org.jboss.seam.international.statusMessages
>         at
> org.jboss.seam.init.Initialization.addComponent(Initialization.java:1068)
>         at
> org.jboss.seam.init.Initialization.installComponents(Initialization.java:984)
>         at
> org.jboss.seam.init.Initialization.init(Initialization.java:646)
>         at
> org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.java:34)
>         at
> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
>         at
> org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
>         at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
>         at
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
>         at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
>         at
> org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:829)
>         at
> org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:718)
>         at
> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
>         at
> org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
>         at
> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
>         at
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
>         at
> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
>         at
> org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
>         at
> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
>         at
> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
>         at
> org.apache.catalina.core.StandardService.start(StandardService.java:516)
>         at
> org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
>         at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
>         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:597)
>         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
>         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
> Caused by: java.lang.NoClassDefFoundError:
> [Lorg/hibernate/validator/InvalidValue;
>         at java.lang.Class.getDeclaredMethods0(Native Method)
>         at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
>         at java.lang.Class.privateGetPublicMethods(Class.java:2547)
>         at java.lang.Class.privateGetPublicMethods(Class.java:2563)
>         at java.lang.Class.getMethods(Class.java:1410)
>         at org.jboss.seam.Component.hasAnnotation(Component.java:1078)
>         at org.jboss.seam.Component.<init>(Component.java:212)
>         at org.jboss.seam.Component.<init>(Component.java:199)
>         at
> org.jboss.seam.init.Initialization.addComponent(Initialization.java:1052)
>         ... 27 more
> Caused by: java.lang.ClassNotFoundException:
> org.hibernate.validator.InvalidValue
>         at
> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1360)
>         at
> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1206)
>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>         ... 36 more
>
> 4. Seam's version of the Java Expression Language was clashing with
> Tomcat's
>
> POM Changes
>
> - exclude from seam
> <dependency>
>             <groupId>org.jboss.seam</groupId>
>             <artifactId>jboss-seam</artifactId>
>             <version>2.1.0-SNAPSHOT</version>
>             <exclusions>
>                 <exclusion>
>                     <groupId>javax.el</groupId>
>                     <artifactId>el-api</artifactId>
>                 </exclusion>
>             </exclusions>
>         </dependency>
> - comment out from POM
> <!--<dependency>-->
>             <!--<groupId>javax.el</groupId>-->
>             <!--<artifactId>el-api</artifactId>-->
>             <!--<version>1.2</version>-->
>             <!--<scope>runtime</scope>-->
>         <!--</dependency>-->
>
>
> Exception without change
>
> java.lang.LinkageError: loader constraint violation: when resolving
> interface method
> "javax.servlet.jsp.JspApplicationContext.getExpressionFactory()Lj
> avax/el/ExpressionFactory;" the class loader (instance of
> org/apache/jasper/servlet/JasperLoader) of the current class,
> org/apache/jsp/index_jsp, and
> the class loader (instance of
> org/apache/catalina/loader/StandardClassLoader) for resolved class,
> javax/servlet/jsp/JspApplicationContext, have differ
> ent Class objects for the type javax/el/ExpressionFactory used in the
> signature
>         at org.apache.jsp.index_jsp._jspInit(index_jsp.java:22)
>         at org.apache.jasper.runtime.HttpJspBase.init(HttpJspBase.java:52)
>         at
> org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:159)
>         at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
>         at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
>         at
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>         at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at
> org.jboss.seam.web.ContextFilter$1.process(ContextFilter.java:42)
>         at
> org.jboss.seam.servlet.ContextualHttpServletRequest.run(ContextualHttpServletRequest.java:53)
>         at
> org.jboss.seam.web.ContextFilter.doFilter(ContextFilter.java:37)
>         at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>         at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
>         at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>         at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>         at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
>         at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>         at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>         at
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>         at java.lang.Thread.run(Thread.java:619)
>
> let me know if we should use different versions then the ones I have
> listed.
>
> thanks
>
> dave sinclair
>
> _______________________________________________
> rules-dev mailing list
> rules-dev@lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-dev
>
>

--
View this message in context: http://www.nabble.com/M2-Guvnor-Tomcat-Deployment-Issues-and-Resolutions-tp19750352p20331483.html
Sent from the drools - dev mailing list archive at Nabble.com.



------------------------------

_______________________________________________
rules-dev mailing list
rules-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev


End of rules-dev Digest, Vol 28, Issue 13
*****************************************