[rules-users] java.lang.NullPointerException at org.drools.reteoo.ReteooFactHandleFactory.newFactHandle(ReteooFactHandleFactory.java:56)

Wolfgang Laun wolfgang.laun at gmail.com
Mon Jul 23 12:47:47 EDT 2012


If there is an insert() call in
org.tass.utils.ExpertSystemManager.java in line 156 then *this* is
where the insert occurs, not the insert() in the rule.

Where is org.tass.utils coming from?

It's still a mystery to me how it's possible to have a stack trace
element from NamedEntryPoint.java line 48 - there's no code in this
line.

-W

On 23/07/2012, Carolina Pellecchia <carolina.pellecchia at gmail.com> wrote:
> of course, the answers are:
>
>
>
>> (1) Is the originally posted stack trace complete? What you have
>> posted doesn't make sense.
>>
> it is the stack trace complete of this exception. Now I added some other
> log lines.
>
> If  you mean other thing, please let me know.
>
> DEBUG [2012-07-23 16:27:51,374] [Thread-19] (*StorageManager.java:778*)
> - Asking a con. to DB: jdbc:postgresql://tass-server/gsn_geo_dev_c => busy:
> 1, max-size: 8, idle: 2
>
>      [*java*] DEBUG [2012-07-23 16:27:51,375] [Thread-19] (*
> StorageManager.java:457*)     - Executing query: select * from __435941104
> ( Binary Field Linked:false)
>
>      [*java*] DEBUG [2012-07-23 16:27:51,375] [Thread-19] (*
> StorageManager.java:778*)     - Asking a con. to DB:
> jdbc:postgresql://tass-server/gsn_geo_dev_c => busy: 2, max-size: 8, idle:
> 1
>
>      [*java*] DEBUG [2012-07-23 16:27:51,382] [Thread-19] (*
> ObservationFactory.java:226*)     -
> org.dfms.model.observation.ACObservation/1343053671381/920/sim_bidv:1343053671381
>
>      [*java*] ERROR [2012-07-23 16:27:51,385] [Thread-19] (*
> ExpertSystemManager.java:162*)     - *java.lang.NullPointerException*
>
>      [*java*] *java.lang.NullPointerException*
>
>      [*java*]       at
> org.drools.reteoo.ReteooFactHandleFactory.newFactHandle(*
> ReteooFactHandleFactory.java:56*)
>
>      [*java*]       at
> org.drools.common.AbstractFactHandleFactory.newFactHandle(*
> AbstractFactHandleFactory.java:80*)
>
>      [*java*]       at
> org.drools.common.AbstractFactHandleFactory.newFactHandle(*
> AbstractFactHandleFactory.java:65*)
>
>      [*java*]       at org.drools.common.NamedEntryPoint.createHandle(*
> NamedEntryPoint.java:720*)
>
>      [*java*]       at org.drools.common.NamedEntryPoint.insert(*
> NamedEntryPoint.java:280*)
>
>      [*java*]       at org.drools.common.NamedEntryPoint.insert(*
> NamedEntryPoint.java:116*)
>
>      [*java*]       at org.drools.common.NamedEntryPoint.insert(*
> NamedEntryPoint.java:48*)
>
>      [*java*]       at
> org.tass.utils.ExpertSystemManager.insertObservation(
> *ExpertSystemManager.java:156*)
>
>      [*java*]       at org.tass.vsensor.ExpertVS.dataAvailable(*
> ExpertVS.java:59*)
>
>      [*java*]       at gsn.beans.InputStream.executeQuery(*
> InputStream.java:277*)
>
>      [*java*]       at gsn.beans.StreamSource.windowSlided(*
> StreamSource.java:325*)
>
>      [*java*]       at
> gsn.beans.windowing.SQLViewQueryRewriter.dataAvailable(*
> SQLViewQueryRewriter.java:83*)
>
>      [*java*]       at
> gsn.beans.windowing.TupleBasedSlidingHandler.dataAvailable(*
> TupleBasedSlidingHandler.java:56*)
>
>      [*java*]       at gsn.wrappers.AbstractWrapper.postStreamElement(*
> AbstractWrapper.java:222*)
>
>      [*java*]       at
> gsn.http.rest.LocalDeliveryWrapper.writeStreamElement(*
> LocalDeliveryWrapper.java:147*)
>
>      [*java*]       at
> gsn.http.rest.DefaultDistributionRequest.deliverStreamElement(*
> DefaultDistributionRequest.java:57*)
>
>      [*java*]       at gsn.DataDistributer.flushStreamElement(*
> DataDistributer.java:165*)
>
>      [*java*]       at gsn.DataDistributer.run(*DataDistributer.java:220*)
>
>      [*java*]       at java.lang.Thread.run(*Thread.java:662*)
>
>      [*java*] DEBUG [2012-07-23 16:27:51,387] [Thread-19] (*
> VirtualSensor.java:112*)     - Enforcing the limit size on the VS table by
> : delete from sim_tassllfvs where sim_tassllfvs.timed <= ( SELECT * FROM (
> SELECT timed FROM sim_tassllfvs group by sim_tassllfvs.timed ORDER BY
> sim_tassllfvs.timed DESC LIMIT 1 offset 5000  ) AS TMP)
>
>      [*java*] DEBUG [2012-07-23 16:27:51,387] [Thread-19] (*
> StorageManager.java:778*)     - Asking a con. to DB:
> jdbc:postgresql://tass-server/gsn_geo_dev_c => busy: 1, max-size: 8, idle:
> 2
>
>      [*java*] DEBUG [2012-07-23 16:27:51,389] [Thread-19] (*
> VirtualSensor.java:119*)     - 0 old rows dropped from sim_tassllfvs
>      [*java*] DEBUG [2012-07-23 16:27:51,391] [Thread-19] (*
> InputStream.java:292*)     - Input Stream's result has *1* stream elements
>
>
>> > In particular the exception (I mentioned above) happens before calling
>> the
>> > method "SituationManager.createAccessControlEvent":
>> >
>>
>> This isn't possible. The call must have completed, and we're already
>> in insert().
>>
>> We are using drools Fusion and then we are inserting some events(
> ACObservation )
> through entry point. Is it possible that the error is related to this
> insert operation?
>
> Thank you and kindly regards!
> Carolina
>


More information about the rules-users mailing list