Hi
Here is my CDR class
package com.rbtsb.tm.meter.model;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.persistence.Transient;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.log4j.Logger;
/**
* This Class is the same as CDRRepository with additional 2 attribute, and
* created for Rule Purpose.
*
* @author akhfa
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class CDR implements CSVData {
/**
* log Injected.
*/
private static final Logger LOG = Logger.getLogger(CDR.class);
/**
* nxxSrvUsageCode.
*/
private String nxxSrvUsageCode;
/**
* aNumber.
*/
private String aNumber;
/**
* bNumber.
*/
private String bNumber;
/**
* cNumber.
*/
private String cNumber;
/**
* stdTollUsageDate.
*/
private String stdTollUsageDate;
/** this is helper for stdTollUsage date with format 'yyyymmdd'. */
private Date usageDate;
/** getter for usageDate, for ruleEngine purpose. */
public Date getUsageDate() {
// txt format 'yyyymmdd'
String strDate = this.stdTollUsageDate;
DateFormat formatter = new SimpleDateFormat("yyyyMMdd");
try {
this.usageDate = formatter.parse(strDate);
} catch (ParseException pe) {
LOG.error(pe.getMessage());
}
return this.usageDate;
}
/**
* stdTollStartTime.
*/
private String stdTollStartTime;
/**
* tollRatedFullAmount.
*/
private String tollRatedFullAmount;
/**
* tollRatedChargedAmount.
*/
private String tollRatedChargedAmount;
/**
* tollSurchargeAmount.
*/
private String tollSurchargeAmount;
/**
* stdTollDurationTime.
*/
private String stdTollDurationTime;
/**
* geogLocName.
*/
private String geogLocName;
/**
* callClassCode.
*/
private String callClassCode;
/**
* callTypeCode.
*/
private String callTypeCode;
/**
* billingChargeCode.
*/
private String billingChargeCode;
/**
* billingClassCode.
*/
private String billingClassCode;
/**
* tlDiscountCode.
*/
private String tlDiscountCode;
/**
* remarksA.
*/
private String remarksA;
/**
* remarksB.
*/
private String remarksB;
/**
* rateBandCode.
*/
private String rateBandCode;
/**
* emergenSpareOlnosIndicator.
*/
private String emergenSpareOlnosIndicator;
/**
* ttmc.
*/
private String ttmc;
/**
* mobileAlphaCode.
*/
private String mobileAlphaCode;
/**
* customerProfile
*/
private CustomerProfile customerProfile;
private String tag = "0";
/**
* TosDatCode List
*/
// private List<TosDatCode> tosDatCodeList = null;
/** Boolean field for rule purpose. */
private Boolean isDrop = false;
/** Boolean field for rule purpose. */
// private Boolean isTag = false;
/** For rule purpose, describe reason why CDR is dropped. */
private String dropReason;
/** For rule purpose, ProductTagging. */
private String productName;
/** For rule purpose, ProductTagging. */
private String specialIndicator;
/** For rule purpose, ProductTagging. */
private String productRuleName;
public boolean isDrop() {
return isDrop;
}
}
On Wed, Jan 18, 2012 at 7:57 PM, Wolfgang Laun <wolfgang.laun(a)gmail.com>wrote:
Please show field and getter declarations in class CDR
-W
On 18/01/2012, mujoko mujoko <mujoko.mujoko(a)gmail.com> wrote:
> For your info, for the same rules. It's not always happen, the error some
> times coming.
> For me the rule is fine (I used guvnor)
> Here is the rule
>
> import com.rbtsb.tm.meter.model.CDR;
> import org.apache.log4j.Logger;
>
> global Logger log;
>
> rule "ProductTag-FixedSMS"
>
> when
> $cdr : CDR(callClassCode == "F1" || callClassCode == "F2" )
> then
> $cdr.setProductName("fixedsms");
> end
>
>
>
> 2012/1/18 Michael Anstis <michael.anstis(a)gmail.com>
>
>> You're going to give a little more information, such as the DRL you're
>> unable to compile.
>>
>> 2012/1/18 mujoko mujoko <mujoko.mujoko(a)gmail.com>
>>
>>> Hi Drools Users,
>>>
>>> I'm new member, Mujoko.
>>> I got issue regarding my rules. Several times got exception when trying
>>> to
>>> create KnowledgeSession. I used drools-core 5.3.0.Final and
>>> drools-compiler 5.3.0.Final.
>>>
>>> java.lang.ArrayIndexOutOfBoundsException: -1
>>> at org.mvel2.asm.Frame.merge(Frame.java:1373)
>>> at org.mvel2.asm.Frame.merge(Frame.java:1350)
>>> at org.mvel2.asm.MethodWriter.visitMaxs(MethodWriter.java:1282)
>>> at
>>>
>>>
org.drools.rule.builder.dialect.asm.ClassGenerator$MethodDescr.write(ClassGenerator.java:480)
>>> at
>>>
>>>
org.drools.rule.builder.dialect.asm.ClassGenerator.generateBytecode(ClassGenerator.java:50)
>>> at
>>>
>>>
org.drools.rule.builder.dialect.asm.ASMEvalBuilder.createEvalBytecode(ASMEvalBuilder.java:63)
>>> at
>>>
>>>
org.drools.rule.builder.dialect.asm.AbstractASMEvalBuilder.build(AbstractASMEvalBuilder.java:49)
>>> at
>>>
>>>
org.drools.rule.builder.dialect.asm.AbstractASMEvalBuilder.build(AbstractASMEvalBuilder.java:15)
>>> at
>>>
>>>
org.drools.rule.builder.GroupElementBuilder.build(GroupElementBuilder.java:65)
>>> at
org.drools.rule.builder.RuleBuilder.build(RuleBuilder.java:80)
>>> at
>>> org.drools.compiler.PackageBuilder.addRule(PackageBuilder.java:2289)
>>> at
>>> org.drools.compiler.PackageBuilder.addPackage(PackageBuilder.java:822)
>>>
>>>
>>>
>>> --
>>> Mujoko
>>>
http://www.linkedin.com/in/mujoko
>>>
>>>
>>> _______________________________________________
>>> 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
>>
>>
>
>
> --
> Mujoko
>
http://www.linkedin.com/in/mujoko
>
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
--
Mujoko
http://www.linkedin.com/in/mujoko