If you create an isolated test you can also create a new Jira issue, so
it's easier for every one to reproduce, test and fix the problem.
Cheers
2012/3/14 mike <mikemps(a)gmail.com>
Wolfgang,
I am using
<dependency>
<groupId>org.drools</groupId>
<artifactId>drools-core</artifactId>
<version>5.3.1.Final</version>
<type>jar</type>
</dependency>
Mauricio:
It is something related to loading classes inside Jersey that brakes if I
am using mvel. I use mvel always, because java syntax hurts me.
Drools Team:
I think the easier way would be to try this scenario yourself. This is a
pom for Jersey.
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-client</artifactId>
<version>1.12</version>
</dependency>
Thank you very much
Cheers
Mike
2012/3/14 Mauricio Salatino <salaboy(a)gmail.com>
> Sure.. we are interested in finding out what is happening. So, you find
> that when you are using mvel something inside Jersey fails?
> Did you find what exactly is happening inside Jersey? Probably it's
> something related with the class loaders, but I never seen an error like
> that when you specify the mvel dialect.
> By the way, what exactly are you trying to do with mvel? did you try
> using the mvel syntax without explicitly specifying the dialect?
>
> Cheers
>
>
>
> 2012/3/14 mike <mikemps(a)gmail.com>
>
>> 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(a)gmail.com>
>>
>>> Cool that you find that :)
>>> Cheers
>>>
>>>
>>> 2012/3/14 mike <mikemps(a)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(a)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(a)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(a)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(a)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(a)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(a)lists.jboss.org
>>>>>>>
https://lists.jboss.org/mailman/listinfo/rules-users
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> rules-users mailing list
>>>>>> rules-users(a)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(a)lists.jboss.org
>>>>>
https://lists.jboss.org/mailman/listinfo/rules-users
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> rules-users mailing list
>>>> rules-users(a)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(a)lists.jboss.org
>>>
https://lists.jboss.org/mailman/listinfo/rules-users
>>>
>>>
>>
>> _______________________________________________
>> rules-users mailing list
>> rules-users(a)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(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/rules-users
>
>
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users