Wait ... I haven't solved the problem ... I mean, as of now I cannot use mvel if I want to use Jersey ... and I don't think it's Jersey's fault because it works in any condition except when using mvel. I thought that the Drools team follows this list and might be interested in that bug.

Thank you very much
Mike

2012/3/14 Mauricio Salatino <salaboy@gmail.com>
Cool that you find that :)
Cheers


2012/3/14 mike <mikemps@gmail.com>
Hi Mauricio,

I spent like 2 days debugging, before realizing that mvel was the culprit. The error is a Null Exception when resolving some service inside Jersey. I have to check my browser history at home for more details but the exception was happening inside Jersey.

Please notice I reduced the code to the minimum. I had 'real' code doing more reasonable things with new Client. Client c = new Client() fails too.

Thank you very much
Mike


2012/3/14 Mauricio Salatino <salaboy@gmail.com>
Hi Mike, I've never tried that before (a rule without the when part..) is good to know that it works :)
Humm that's sounds weird.. why the dialect is affecting your Client creation.
It could be that there is something wrong with the expression evaluation.
It looks like MVEL cannot compile the new Client(); expression -> at java.lang.String.<init>(Unknown Source)
Did you try with something like:
then \n
Client c = new Client();

I'm just guessing here, because it looks strange


2012/3/14 mike <mikemps@gmail.com>
Hi Mauricio,

Thank you for the speedy reply. Ia m making rest call to web services using jersey. I simplified the rule to the max. The 'when' is not really needed. I get the exception on the call to "new Client()". Please keep in mind it works without dialect "mvel".

Thank you very much
Mike

Here's the stack trace .............
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.String.<init>(Unknown Source)
at org.mvel2.CompileException.showCodeNearError(CompileException.java:149)
at org.mvel2.CompileException.generateErrorMessage(CompileException.java:219)
at org.mvel2.CompileException.toString(CompileException.java:62)
at java.lang.Throwable.<init>(Throwable.java:242)
at java.lang.Exception.<init>(Unknown Source)
at java.lang.RuntimeException.<init>(Unknown Source)
at org.drools.runtime.rule.ConsequenceException.<init>(ConsequenceException.java:31)
at org.drools.runtime.rule.impl.DefaultConsequenceExceptionHandler.handleException(DefaultConsequenceExceptionHandler.java:39)
at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1101)
at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:1029)
at org.drools.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1251)
at org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:709)
at org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:673)
at org.drools.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:218)
at com.ultimatesoftware.engine.tests.Wip.drools_new_client(Wip.java:32)
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.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:69)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:48)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
at org.junit.runners.ParentRunner.run(ParentRunner.java:292)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)



2012/3/14 Mauricio Salatino <salaboy@gmail.com>
what are you trying to do?
what's the error?

the rule should look like

rule "create Rest Client"
    when
    then new Client();
end

2012/3/14 mike <mikemps@gmail.com>
Hi there,

I am trying to make rest calls from Drools. For that I am using Jersey http://jersey.java.net/. I cannot no get it to work if I use mvel, otherwise it works fine. 

Here is a sample rule:
----------------------------------------------------------
import com.sun.jersey.api.client.Client;

dialect  "mvel"

rule "create Rest Client"
    then new Client();
end
----------------------------------------------------------

I would love to be able to use mvel since it curves java syntax :) 

Thank you
Mike

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




--
 - MyJourney @ http://salaboy.wordpress.com
 - Co-Founder @ http://www.jugargentina.org
 - Co-Founder @ http://www.jbug.com.ar
 
 - Salatino "Salaboy" Mauricio -


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



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




--
 - MyJourney @ http://salaboy.wordpress.com
 - Co-Founder @ http://www.jugargentina.org
 - Co-Founder @ http://www.jbug.com.ar
 
 - Salatino "Salaboy" Mauricio -


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



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




--
 - MyJourney @ http://salaboy.wordpress.com
 - Co-Founder @ http://www.jugargentina.org
 - Co-Founder @ http://www.jbug.com.ar
 
 - Salatino "Salaboy" Mauricio -


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