4.0.0MR2 is a beta (Milestone Release 2).
 
Final production release, as per earlier posts to the list, is due c.16/07/2007.
 
With kind regards,
 
Mike


From: rules-users-bounces@lists.jboss.org [mailto:rules-users-bounces@lists.jboss.org] On Behalf Of Sikkandar Nawabjan
Sent: 20 June 2007 14:17
To: rules-users@lists.jboss.org
Subject: RE:[ rules-users] 4.0.0MR2 Beeta?

Hi,
am  bit confused about 4.0.0MR2.
It is a official release i assume.
But the name(milestone) seems it is a Beeta release.
is it really a beeta version?If so when will be the standard edition planned to release?
Thanks and Regs,
Basha


From: rules-users-bounces@lists.jboss.org on behalf of rules-users-request@lists.jboss.org
Sent: Tue 6/19/2007 10:26 AM
To: rules-users@lists.jboss.org
Subject: rules-users Digest, Vol 7, Issue 48

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

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

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

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


Today's Topics:

   1. NoMuchMethod - But there is! (Steven Waldren)
   2. RE: NullPointerException:
      org.drools.base.extractors.BaseObjectClassFieldExtractor.getLongValue(BaseObjectClassFieldExtractor.java:103)
      (Prakash Galagali)


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

Message: 1
Date: Mon, 18 Jun 2007 13:56:06 -0500
From: Steven Waldren <swaldren@gmail.com>
Subject: [rules-users] NoMuchMethod - But there is!
To: Rules Users List <rules-users@lists.jboss.org>
Message-ID: <E5573FD8-A6C0-4206-8F86-23CCA07E8952@gmail.com>
Content-Type: text/plain; charset="us-ascii"

Hello,

I downloaded the JBoss Rules 4.0 Eclipse IDE.  I built a small 
project with about 120 rules. My test asserts around 500 objects. 
When I try to add one more rule (regardless of the content of the 
rule) I get the error below, stating no such method error.  Even if I 
add the following rule, I still get the error:

rule "new rule"
        when
                Object()
        then
                System.out.print("test");
end


What other problems can throw these errors?

Thanks,
Steven
--
Steven E. Waldren, M.D., M.S.
OpenHealth Data
Skype: steven.waldren

======= THE ERROR ==========
java.lang.NoSuchMethodError: 
org.eclipse.jdt.internal.compiler.CompilationResult.getProblems()
[Lorg/eclipse/jdt/core/compiler/CategorizedProblem;
        at org.apache.commons.jci.compilers.EclipseJavaCompiler
$2.acceptResult(EclipseJavaCompiler.java:295)
        at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:
454)
        at org.apache.commons.jci.compilers.EclipseJavaCompiler.compile
(EclipseJavaCompiler.java:332)
        at org.drools.rule.builder.dialect.java.JavaDialect.compileAll
(JavaDialect.java:311)
        at org.drools.compiler.PackageBuilder.addPackage(PackageBuilder.java:
237)
        at org.drools.compiler.PackageBuilder.addPackageFromDrl
(PackageBuilder.java:157)
        at com.sample.DroolsTest.readRule(DroolsTest.java:78)
        at com.sample.DroolsTest.main(DroolsTest.java:37)
java.lang.NoSuchMethodError: 
org.eclipse.jdt.internal.compiler.CompilationResult.getProblems()
[Lorg/eclipse/jdt/core/compiler/CategorizedProblem;
        at org.apache.commons.jci.compilers.EclipseJavaCompiler
$2.acceptResult(EclipseJavaCompiler.java:295)
        at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:
454)
        at org.apache.commons.jci.compilers.EclipseJavaCompiler.compile
(EclipseJavaCompiler.java:332)
        at org.drools.rule.builder.dialect.java.JavaDialect.compileAll
(JavaDialect.java:311)
        at org.drools.compiler.PackageBuilder.addPackage(PackageBuilder.java:
237)
        at org.drools.compiler.PackageBuilder.addPackageFromDrl
(PackageBuilder.java:157)
        at com.sample.DroolsTest.readRule(DroolsTest.java:78)
        at com.sample.DroolsTest.main(DroolsTest.java:37)



-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20070618/0587f198/attachment-0001.html

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

Message: 2
Date: Mon, 18 Jun 2007 21:56:03 -0700
From: "Prakash Galagali" <prakash.galagali@tavant.com>
Subject: RE: [rules-users] NullPointerException:
        org.drools.base.extractors.BaseObjectClassFieldExtractor.getLongValue(BaseObjectClassFieldExtractor.java:103)
       
To: "Rules Users List" <rules-users@lists.jboss.org>
Message-ID:
        <2DDBC6E8B743B543AA8DF3A1C8BFBF7A01B63E66@sclex01.us.corp.tavant.com>
Content-Type: text/plain; charset="us-ascii"

I guess one of the Attributes in IndividualNok has no getter / setter
method.



Just verify



________________________________

From: rules-users-bounces@lists.jboss.org
[mailto:rules-users-bounces@lists.jboss.org] On Behalf Of Jian Li
Sent: Monday, June 18, 2007 8:41 AM
To: rules-users@lists.jboss.org
Subject: [rules-users] NullPointerException:
org.drools.base.extractors.BaseObjectClassFieldExtractor.getLongValue(Ba
seObjectClassFieldExtractor.java:103)



Hi,



The following problem encountered:



I have a rule defintion :



----------------------------------------------dpd.drl

package ruletest;

import ruletest.IndividualNok;


rule Female_NOK_sex_401
   //when (IndividualNok(nokRelationship==401) ||
IndividualNok(nokRelationship==402))
   when (IndividualNok(nokRelationship==401) ||
IndividualNok(nokRelationship==402) ||
IndividualNok(nokRelationship==403))
   then
       System.out.println("abc");
   end

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





When I tried the commented out LSH, it works, however, when i add one
more expression to it , it fails with the following exceptions:



Exception in thread "main" java.lang.NullPointerException
        at
org.drools.base.extractors.BaseObjectClassFieldExtractor.getLongValue(Ba
seObjectClassFieldExtractor.java:103)
        at
org.drools.base.ClassFieldExtractor.getLongValue(ClassFieldExtractor.jav
a:144)
        at
org.drools.reteoo.CompositeObjectSinkAdapter$HashKey.setValue(CompositeO
bjectSinkAdapter.java:467)
        at
org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(Compo
siteObjectSinkAdapter.java:292)
        at
org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:183)
        at org.drools.reteoo.Rete.assertObject(Rete.java:121)
        at
org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:201)
        at
org.drools.reteoo.ReteooWorkingMemory.doAssertObject(ReteooWorkingMemory
.java:70)
        at
org.drools.common.AbstractWorkingMemory.assertObject(AbstractWorkingMemo
ry.java:724)
        at
org.drools.common.AbstractWorkingMemory.assertObject(AbstractWorkingMemo
ry.java:548)

Any idea about this? is it a bug



When I tried to create an additional rule with the 2 expression, it
still fails. This error can be reproduced with the followng code:



-------------------------the Main Class's main method

    public static void main(String[] args) {
        // TODO code application logic here
               final PackageBuilder builder = new PackageBuilder();
        try {
            builder.addPackageFromDrl( new InputStreamReader(
Main.class.getResourceAsStream( "dpd.drl" ) ) );
        } catch (DroolsParserException ex) {
            ex.printStackTrace();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
       
        final RuleBase ruleBase = RuleBaseFactory.newRuleBase();
        try {
            ruleBase.addPackage( builder.getPackage() );
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        final StatefulSession session = ruleBase.newStatefulSession();
        IndividualNok individualNok = new IndividualNok();
        session.assertObject(individualNok);
        session.fireAllRules();
        session.dispose();
    }

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

-------------------------------------------------Person class: requried
by individualNok, a simple POJO

import java.util.Date;
import java.util.HashSet;
import java.util.Set;

/**
 *
 * @author Jian.Li
 */
public class Person implements java.io.Serializable {
   
    // Fields
   
    private Long personId;
    private Integer nationality;
    private Integer race;
    private String firstName;
    private String lastName;
    private String midName;
    private Date birthdate;
    private Integer occupation;
    private Integer religion;
    private Integer primaryLanguage;
    private Integer veteransStatus;
    private String idNo;
    private Integer idType;
    private String mobileNo;
    private String email;
    private Integer ethnicgroupcountry;
    private Integer ethnicgroupstate;
    private Integer ethnicgroupcity;
    private Integer sex;
    private Integer maritalStatus;
    private Date lud;
    private String lub;
    private Set individualNoksForNokPersonId = new HashSet(0);
    private Set careproviders = new HashSet(0);
    private Set residentialAddresses = new HashSet(0);
    private Set individualNoksForPersonId = new HashSet(0);
   
    // Constructors
    /** default constructor */
    public Person() {
    }
    /** minimal constructor */
    public Person(String firstName, String lastName, Date birthdate,
            Integer sex, Integer maritalStatus, Date lud) {
        this.firstName = firstName;
        this.lastName = lastName;
        this.birthdate = birthdate;
        this.sex = sex;
        this.maritalStatus = maritalStatus;
        this.lud = lud;
    }
   
    /** full constructor */
    public Person(Integer nationality, Integer race, String firstName,
            String lastName, String midName, Date birthdate,
            Integer occupation, Integer religion, Integer
primaryLanguage,
            Integer veteransStatus, String idNo, Integer idType,
            String mobileNo, String email, Integer ethnicgroupcountry,
            Integer ethnicgroupstate, Integer ethnicgroupcity, Integer
sex,
            Integer maritalStatus, Date lud, String lub,
            Set individualNoksForNokPersonId, Set careproviders,
            Set residentialAddresses, Set individualNoksForPersonId) {
        this.nationality = nationality;
        this.race = race;
        this.firstName = firstName;
        this.lastName = lastName;
        this.midName = midName;
        this.birthdate = birthdate;
        this.occupation = occupation;
        this.religion = religion;
        this.primaryLanguage = primaryLanguage;
        this.veteransStatus = veteransStatus;
        this.idNo = idNo;
        this.idType = idType;
        this.mobileNo = mobileNo;
        this.email = email;
        this.ethnicgroupcountry = ethnicgroupcountry;
        this.ethnicgroupstate = ethnicgroupstate;
        this.ethnicgroupcity = ethnicgroupcity;
        this.sex = sex;
        this.maritalStatus = maritalStatus;
        this.lud = lud;
        this.lub = lub;
        this.individualNoksForNokPersonId =
individualNoksForNokPersonId;
        this.careproviders = careproviders;
        this.residentialAddresses = residentialAddresses;
        this.individualNoksForPersonId = individualNoksForPersonId;
    }
   
    // Property accessors
    public Long getPersonId() {
        return this.personId;
    }
    public void setPersonId(Long personId) {
        this.personId = personId;
    }
    public Integer getNationality() {
        return this.nationality;
    }
    public void setNationality(Integer nationality) {
        this.nationality = nationality;
    }
    public Integer getRace() {
        return this.race;
    }
    public void setRace(Integer race) {
        this.race = race;
    }
    public String getFirstName() {
        return this.firstName;
    }
    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }
    public String getLastName() {
        return this.lastName;
    }
    public void setLastName(String lastName) {
        this.lastName = lastName;
    }
    public String getMidName() {
        return this.midName;
    }
    public void setMidName(String midName) {
        this.midName = midName;
    }
    public Date getBirthdate() {
        return this.birthdate;
    }
    public void setBirthdate(Date birthdate) {
        this.birthdate = birthdate;
    }
    public Integer getOccupation() {
        return this.occupation;
    }
    public void setOccupation(Integer occupation) {
        this.occupation = occupation;
    }
    public Integer getReligion() {
        return this.religion;
    }
    public void setReligion(Integer religion) {
        this.religion = religion;
    }
    public Integer getPrimaryLanguage() {
        return this.primaryLanguage;
    }
    public void setPrimaryLanguage(Integer primaryLanguage) {
        this.primaryLanguage = primaryLanguage;
    }
    public Integer getVeteransStatus() {
        return this.veteransStatus;
    }
    public void setVeteransStatus(Integer veteransStatus) {
        this.veteransStatus = veteransStatus;
    }
    public String getIdNo() {
        return this.idNo;
    }
    public void setIdNo(String idNo) {
        this.idNo = idNo;
    }
    public Integer getIdType() {
        return this.idType;
    }
    public void setIdType(Integer idType) {
        this.idType = idType;
    }
    public String getMobileNo() {
        return this.mobileNo;
    }
    public void setMobileNo(String mobileNo) {
        this.mobileNo = mobileNo;
    }
    public String getEmail() {
        return this.email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public Integer getEthnicgroupcountry() {
        return this.ethnicgroupcountry;
    }
    public void setEthnicgroupcountry(Integer ethnicgroupcountry) {
        this.ethnicgroupcountry = ethnicgroupcountry;
    }
    public Integer getEthnicgroupstate() {
        return this.ethnicgroupstate;
    }
    public void setEthnicgroupstate(Integer ethnicgroupstate) {
        this.ethnicgroupstate = ethnicgroupstate;
    }
    public Integer getEthnicgroupcity() {
        return this.ethnicgroupcity;
    }
    public void setEthnicgroupcity(Integer ethnicgroupcity) {
        this.ethnicgroupcity = ethnicgroupcity;
    }
    public Integer getSex() {
        return this.sex;
    }
    public void setSex(Integer sex) {
        this.sex = sex;
    }
    public Integer getMaritalStatus() {
        return this.maritalStatus;
    }
    public void setMaritalStatus(Integer maritalStatus) {
        this.maritalStatus = maritalStatus;
    }
    public Date getLud() {
        return this.lud;
    }
    public void setLud(Date lud) {
        this.lud = lud;
    }
    public String getLub() {
        return this.lub;
    }
    public void setLub(String lub) {
        this.lub = lub;
    }
    public Set getIndividualNoksForNokPersonId() {
        return this.individualNoksForNokPersonId;
    }
    public void setIndividualNoksForNokPersonId(Set
individualNoksForNokPersonId) {
        this.individualNoksForNokPersonId =
individualNoksForNokPersonId;
    }
    public Set getCareproviders() {
        return this.careproviders;
    }
    public void setCareproviders(Set careproviders) {
        this.careproviders = careproviders;
    }
    public Set getResidentialAddresses() {
        return this.residentialAddresses;
    }
    public void setResidentialAddresses(Set residentialAddresses) {
        this.residentialAddresses = residentialAddresses;
    }
    public Set getIndividualNoksForPersonId() {
        return this.individualNoksForPersonId;
    }
    public void setIndividualNoksForPersonId(Set
individualNoksForPersonId) {
        this.individualNoksForPersonId = individualNoksForPersonId;
    }
}

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

-------------------------------------IndividualNok class : a simple POJO

public class IndividualNok implements java.io.Serializable {
   
    // Fields
   
    private Long individualNokId;
   
    private Person personByPersonId;
   
    private Person personByNokPersonId;
   
    private Integer nokRelationship;
   
    private Integer emgcycntctInd;
   
    // Constructors
   
    /** default constructor */
    public IndividualNok() {
    }
   
    /** minimal constructor */
    public IndividualNok(Integer nokRelationship) {
        this.nokRelationship = nokRelationship;
    }
   
    /** full constructor */
    public IndividualNok(Person personByPersonId, Person
personByNokPersonId,
            Integer nokRelationship, Integer emgcycntctInd) {
        this.personByPersonId = personByPersonId;
        this.personByNokPersonId = personByNokPersonId;
        this.nokRelationship = nokRelationship;
        this.emgcycntctInd = emgcycntctInd;
    }
   
    // Property accessors
    public Long getIndividualNokId() {
        return this.individualNokId;
    }
   
    public void setIndividualNokId(Long individualNokId) {
        this.individualNokId = individualNokId;
    }
   
    public Person getPersonByPersonId() {
        return this.personByPersonId;
    }
   
    public void setPersonByPersonId(Person personByPersonId) {
        this.personByPersonId = personByPersonId;
    }
   
    public Person getPersonByNokPersonId() {
        return this.personByNokPersonId;
    }
   
    public void setPersonByNokPersonId(Person personByNokPersonId) {
        this.personByNokPersonId = personByNokPersonId;
    }
   
    public Integer getNokRelationship() {
        return this.nokRelationship;
    }
   
    public void setNokRelationship(Integer nokRelationship) {
        this.nokRelationship = nokRelationship;
    }
   
    public Integer getEmgcycntctInd() {
        return this.emgcycntctInd;
    }
   
    public void setEmgcycntctInd(Integer emgcycntctInd) {
        this.emgcycntctInd = emgcycntctInd;
    }
   
}

---------------------------------------End of IndividualNok





________________________________

Yahoo! Movies
<http://sg.rd.yahoo.com/mail/sg/footer/def/*http:/sg.movies.yahoo.com>
<http://sg.yimg.com/i/sg/widgets/new.gif> - Search movie info and celeb
profiles and photos.

Any comments or statements made in this email are not necessarily those of Tavant Technologies. The information transmitted is intended only for the
person or entity to which it is addressed and may contain confidential and/or privileged material. If you have received this in error, please contact
the sender and delete the material from any computer. All e-mails sent from or to Tavant Technologies. may be subject to our monitoring procedures.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20070618/4350f5a2/attachment.html

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

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


End of rules-users Digest, Vol 7, Issue 48
******************************************