[rules-users] Eval0Invoker : java.lang.NullPointerException
Venkat
ven12344 at yahoo.com
Wed Dec 14 13:42:33 EST 2011
Please find the rules below. That exception is happening from this rule
PAN Device MAC Address null or empty rule
to
PAN Device Smart Device Model null rule
import java.lang.Error;
import java.util.List;
import com.ge.energy.drms.smartgrid.datamodel.model.Customer
import com.ge.energy.drms.core.datamodel.messagesupport.ServiceContext
import
com.ge.energy.drms.external.integration.service.persistence.RegistrationDeregistrationPersistence
import
com.ge.energy.drms.smartgrid.datamodel.services.enddevicemanagement.pandeviceregistrationservice.MissingEntryFault
import com.ge.energy.drms.smartgrid.datamodel.model.ElectricServiceInterface
import com.ge.energy.drms.smartgrid.datamodel.model.PANDevice
global Customer customer;
global ServiceContext serviceContext;
rule "Customer and Service Context null check rule"
no-loop true
salience 1000
when
eval( customer == null && serviceContext == null ) // condition
then
throw new MissingEntryFault("Customer and ServiceContext are both
required"); // consequence
end
rule "User Name null or empty check rule"
no-loop true
salience 900
when
ServiceContext( userName == null || userName == "" ) // condition
then
throw new MissingEntryFault("USER ID is required"); // consequence
end
/*
rule "User Name validation check rule"
no-loop true
salience 800
when
$serviceContext : ServiceContext()
RegistrationDeregistrationPersistence( eval( validateUserName(
$serviceContext ) <= -1 ) ) // condition
then
throw new Error("USER ID is invalid"); // consequence
end
*/
rule "Service Account Number null or empty rule"
no-loop true
salience 700
when
Customer( serviceAccountNumber == null || serviceAccountNumber == "" ) //
condition
then
throw new MissingEntryFault("Service Account Number is required"); //
consequence
end
rule "Install Service null or empty rule"
no-loop true
salience 600
when
Customer( installService == null || installService == "" ) // condition
then
throw new MissingEntryFault("Install Service is required"); // consequence
end
rule "Electric Service Interface null or empty rule"
no-loop true
salience 500
when
Customer( electricServiceInterfaces == null ||
electricServiceInterfaces.size() <=0 ) // condition
then
throw new MissingEntryFault("Electric Service Interfaces are required");
// consequence
end
rule "ESN null or empty rule"
no-loop true
salience 400
when
$customer : Customer()
$esi : ElectricServiceInterface() from
$customer.getElectricServiceInterfaces()
eval( $esi.getESN() == null || $esi.getESN().isEmpty() ) //condition
then
throw new MissingEntryFault("ESN cannot be null or empty"); // consequence
end
rule "PAN Device null or empty rule"
no-loop true
salience 300
when
$customer : Customer()
$esi : ElectricServiceInterface() from
$customer.getElectricServiceInterfaces()
eval( $esi.getPANdevices() == null || $esi.getPANdevices().size()<=0 )
//condition
then
throw new MissingEntryFault("PAN Device list cannot be null or empty"); //
consequence
end
rule "PAN Device MAC Address null or empty rule"
no-loop true
salience 200
when
$customer : Customer()
$esis : ElectricServiceInterface() from
$customer.getElectricServiceInterfaces()
$panDevice : PANDevice() from $esis.getPANdevices()
eval( $panDevice.getMACAddress() == null || $panDevice.getMACAddress() ==
"" ) //condition
then
throw new MissingEntryFault("MAC Address cannot be null or empty"); //
consequence
end
rule "PAN Device Install Code null or empty rule"
no-loop true
salience 100
when
$customer : Customer()
$esis : ElectricServiceInterface() from
$customer.getElectricServiceInterfaces()
$panDevice : PANDevice() from $esis.getPANdevices()
eval( $panDevice.getInstallCode() == null || $panDevice.getInstallCode()
== "" ) //condition
then
throw new MissingEntryFault("Install Code cannot be null or empty"); //
consequence
end
rule "PAN Device Smart Device Model null rule"
no-loop true
salience 90
when
$customer : Customer()
$esis : ElectricServiceInterface() from
$customer.getElectricServiceInterfaces()
$panDevice : PANDevice() from $esis.getPANdevices()
eval( $panDevice.getSmartDeviceModel() == null ) //condition
then
throw new MissingEntryFault("Smart Device Model cannot be null"); //
consequence
end
rule "PAN Device Smart Device Model Device Class null rule"
no-loop true
salience 80
when
$customer : Customer()
$esis : ElectricServiceInterface() from
$customer.getElectricServiceInterfaces()
$panDevice : PANDevice() from $esis.getPANdevices()
eval( $panDevice.getSmartDeviceModel().getDeviceClass() == null )
//condition
then
throw new MissingEntryFault("Device Class cannot be null"); // consequence
end
rule "PAN Device Smart Device Model Device Type null rule"
no-loop true
salience 70
when
$customer : Customer()
$esis : ElectricServiceInterface() from
$customer.getElectricServiceInterfaces()
$panDevice :PANDevice() from $esis.getPANdevices()
eval( $panDevice.getSmartDeviceModel().getDeviceType() == null )
//condition
then
throw new MissingEntryFault("Device Type cannot be null"); // consequence
end
--
View this message in context: http://drools.46999.n3.nabble.com/Eval0Invoker-java-lang-NullPointerException-tp3586222p3586355.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
More information about the rules-users
mailing list