[JBoss jBPM] - EL Condition failing
by falazar
The server is throwing an error when trying to compare a variable against a condition:
Caused by: org.jbpm.JbpmException: couldn't evaluate expression '#{amount > 1000}'
at org.jbpm.jpdl.el.impl.JbpmExpressionEvaluator.evaluate(JbpmExpressionEvaluator.java:33)
at org.jbpm.jpdl.el.impl.JbpmExpressionEvaluator.evaluate(JbpmExpressionEvaluator.java:20)
at org.jbpm.graph.node.Decision.execute(Decision.java:119)
... 63 more
Caused by: org.jbpm.jpdl.el.ELException: An exception occured trying to convert String "234.56" to type "java.lang.Long"
at org.jbpm.jpdl.el.impl.Logger.logError(Logger.java:482)
at org.jbpm.jpdl.el.impl.Logger.logError(Logger.java:499)
at org.jbpm.jpdl.el.impl.Logger.logError(Logger.java:567)
at org.jbpm.jpdl.el.impl.Coercions.coerceToPrimitiveNumber(Coercions.java:441)
at org.jbpm.jpdl.el.impl.Coercions.applyRelationalOperator(Coercions.java:927)
at org.jbpm.jpdl.el.impl.RelationalOperator.apply(RelationalOperator.java:86)
at org.jbpm.jpdl.el.impl.GreaterThanOperator.apply(GreaterThanOperator.java:120)
at org.jbpm.jpdl.el.impl.BinaryOperatorExpression.evaluate(BinaryOperatorExpression.java:170)
at org.jbpm.jpdl.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:264)
at org.jbpm.jpdl.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:191)
at org.jbpm.jpdl.el.impl.JbpmExpressionEvaluator.evaluate(JbpmExpressionEvaluator.java:29)
... 65 more
Definition fragment:
<![CDATA[#{amount > 1000}]]>
<![CDATA[#{amount <= 1000}]]>
Thanks,
James Ratcliff
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4032347#4032347
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4032347
19Â years
[JBoss Seam] - Re: @Logger does not inject
by laxu
Not in the constructor. Here is my class:
|
| package datassist.gop.action;
|
| import datassist.gop.domain.Istek;
| import java.util.ArrayList;
| import java.util.List;
| import javax.ejb.Remove;
| import javax.ejb.Stateful;
| import javax.persistence.EntityManager;
| import javax.persistence.PersistenceContext;
| import javax.persistence.PersistenceContextType;
| import org.jboss.seam.annotations.Create;
| import org.jboss.seam.annotations.Destroy;
| import org.jboss.seam.annotations.Logger;
| import org.jboss.seam.annotations.Name;
| import org.jboss.seam.annotations.datamodel.DataModel;
| import org.jboss.seam.log.Log;
|
| @Stateful
| @Name("istekler")
| public class IsteklerAction implements IsteklerActionLocal {
|
| @PersistenceContext(type=PersistenceContextType.EXTENDED)
| private EntityManager em;
|
| public IsteklerAction() {
| }
|
| @Create
| public void init(){
| System.out.println("initing istekler. logger is "+((logger==null)?"null":"not null"));
| // logger.debug("initing");
| refresh();
| }
|
| @DataModel
| private List<Istek> istekList=new ArrayList<Istek>();
|
| public void refresh(){
| System.out.println("refreshing istekler");
| // logger.debug("refreshing");
| istekList=em.createQuery("from Istek i").getResultList();
| }
|
| public void logSomething(){
| System.out.println("Trying to log something dummy and the logger is "+((logger==null)?"null":"not null"));
| // logger.debug("Logging something dummy");
| }
|
| @Logger
| private Log logger;
|
| @Remove @Destroy
| public void destroy(){}
| }
|
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4032346#4032346
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4032346
19Â years
[Testimonials] - Re: Migration from Weblogic to JBoss 4.0.5
by prakash.dumbre
Thanks for Replay.
16:20:44,347 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'BusinessSKUEntity' to jndi 'local/BusinessSKUEntity@23128226'
In this case application server takes 'local/BusinessSKUEntity@23128226' as JNDI name.
How it takes that name? and each time '@23128226' value has been chenged.
I am confused how should I lookup?
when I am accessing other pages that time above error occures
Following are the xml descriptor for BusinessSKUEntity entity bean
jboss.xml
<ejb-name>BusinessSKUEntity</ejb-name>
<ejb-ref-name>BusinessSKUEntity</ejb-ref-name>
<local-jndi-name>BusinessSKUEntity</local-jndi-name>
<entity-descriptor>
<entity-cache>
<max-beans-in-cache>4000</max-beans-in-cache>
<idle-timeout-seconds>600</idle-timeout-seconds>
<concurrency-strategy>Readonly</concurrency-strategy>
<cache-between-transactions>False</cache-between-transactions>
</entity-cache>
<is-modified-method-name>isModified</is-modified-method-name>
<delay-updates-until-end-of-tx>False</delay-updates-until-end-of-tx>
<persistence-use>
<type-identifier>JBoss_CMP_RDBMS</type-identifier>
<type-version>4.0.5</type-version>
<type-storage>META-INF/jbosscmp-jdbc.xml</type-storage>
</persistence-use>
<entity-clustering>
</entity-clustering>
</entity-descriptor>
<transaction-descriptor>
</transaction-descriptor>
<reference-descriptor>
</reference-descriptor>
ejb-jar.xml
<![CDATA[This bean represent one business specific product]]>
<ejb-name>BusinessSKUEntity</ejb-name>
<local-home>com.xxxx.server.product.ejb.BusinessSKUEntityHome</local-home>
com.xxxx.server.product.ejb.BusinessSKUEntity
<ejb-class>com.xxxxx.server.product.ejb.BusinessSKUEntityEJB</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>com.xxxxx.server.product.ejb.BusinessSKUEntityPK</prim-key-class>
False
<abstract-schema-name>BusinessSKUEntity</abstract-schema-name>
<cmp-field>
<field-name>businessskuid</field-name>
</cmp-field>
<cmp-field>
<field-name>owningbusinessid</field-name>
</cmp-field>
<cmp-field>
<field-name>ownersku</field-name>
</cmp-field>
<cmp-field>
<field-name>ownerskudescription</field-name>
</cmp-field>
<cmp-field>
<field-name>department</field-name>
</cmp-field>
<cmp-field>
<field-name>description</field-name>
</cmp-field>
<cmp-field>
<field-name>baseprice</field-name>
</cmp-field>
<cmp-field>
<field-name>marginpercentage</field-name>
</cmp-field>
<cmp-field>
<field-name>wholesalediscountpctg</field-name>
</cmp-field>
<cmp-field>
<field-name>minimumspreadpctg</field-name>
</cmp-field>
<cmp-field>
<field-name>weight</field-name>
</cmp-field>
<cmp-field>
<field-name>totalexcessinvforavail</field-name>
</cmp-field>
<cmp-field>
<field-name>skusetid</field-name>
</cmp-field>
<cmp-field>
<field-name>markdownlevel</field-name>
</cmp-field>
<cmp-field>
<field-name>createddate</field-name>
</cmp-field>
<cmp-field>
<field-name>createdby</field-name>
</cmp-field>
<cmp-field>
<field-name>modifieddate</field-name>
</cmp-field>
<cmp-field>
<field-name>modifiedby</field-name>
</cmp-field>
<cmp-field>
<field-name>preorder</field-name>
</cmp-field>
<cmp-field>
<field-name>instoredate</field-name>
</cmp-field>
<ejb-local-ref id="EJBLocalRef_1040043976657">
Local Ref for BusinessSKUEntity
<ejb-ref-name>BusinessSKUEntity</ejb-ref-name>
<ejb-ref-type>Entity</ejb-ref-type>
<local-home>com.xxxxx.server.product.ejb.BusinessSKUEntityHome</local-home>
com.xxxxx.server.product.ejb.BusinessSKUEntity
<ejb-link>BusinessSKUEntity</ejb-link>
</ejb-local-ref>
<query-method>
<method-name>findByBusinessAndBusinessSKUID</method-name>
<method-params>
<method-param>int</method-param>
<method-param>int</method-param>
</method-params>
</query-method>
<ejb-ql><![CDATA[SELECT DISTINCT OBJECT(o) FROM BusinessSKUEntity o WHERE ((o.owningbusinessid = ?1) AND (o.businessskuid = ?2))]]></ejb-ql>
<query-method>
<method-name>findByBusinessAndOwnerSKU</method-name>
<method-params>
<method-param>int</method-param>
<method-param>java.lang.String</method-param>
</method-params>
</query-method>
<ejb-ql><![CDATA[SELECT DISTINCT OBJECT(o) FROM BusinessSKUEntity o WHERE ((o.owningbusinessid = ?1) AND (o.ownersku = ?2))]]></ejb-ql>
<assembly-descriptor>
<method-permission>
<![CDATA[This entity bean represent a row in the database for the table CederaSKU]]>
<ejb-name>BusinessSKUEntity</ejb-name>
<method-name>*</method-name>
<ejb-name>BusinessSKUEntity</ejb-name>
<!-- method-intf>Local</method-intf -->
<method-name>*</method-name>
<ejb-name>BusinessSKUEntity</ejb-name>
<!-- method-intf>LocalHome</method-intf -->
<method-name>*</method-name>
<ejb-name>ProductService</ejb-name>
<method-intf>Remote</method-intf>
<method-name>*</method-name>
</method-permission>
<container-transaction>
<ejb-name>BusinessSKUEntity</ejb-name>
<!-- method-intf>LocalHome</method-intf -->
<method-name>*</method-name>
<ejb-name>BusinessSKUEntity</ejb-name>
<!-- method-intf>Local</method-intf -->
<method-name>*</method-name>
</container-transaction>
</assembly-descriptor>
jbosscmp.xml
<jbosscmp-jdbc>
<enterprise-beans>
<ejb-name>BusinessSKUEntity</ejb-name>
java:/orderPool
<datasource-mapping>Oracle9i</datasource-mapping>
<table-name>BusinessSKU</table-name>
<cmp-field>
<field-name>businessskuid</field-name>
<column-name>BUSINESSSKUID</column-name>
</cmp-field>
<cmp-field>
<field-name>owningbusinessid</field-name>
<column-name>OWNINGBUSINESSID</column-name>
</cmp-field>
<cmp-field>
<field-name>ownersku</field-name>
<column-name>OWNERSKU</column-name>
</cmp-field>
<cmp-field>
<field-name>department</field-name>
<column-name>DEPARTMENT</column-name>
</cmp-field>
<cmp-field>
<field-name>description</field-name>
<column-name>DESCRIPTION</column-name>
</cmp-field>
<cmp-field>
<field-name>ownerskudescription</field-name>
<column-name>OWNERSKUDESCRIPTION</column-name>
</cmp-field>
<cmp-field>
<field-name>baseprice</field-name>
<column-name>BASEPRICE</column-name>
</cmp-field>
<cmp-field>
<field-name>marginpercentage</field-name>
<column-name>MARGINPERCENTAGE</column-name>
</cmp-field>
<cmp-field>
<field-name>wholesalediscountpctg</field-name>
<column-name>WHOLESALEDISCOUNTPCTG</column-name>
</cmp-field>
<cmp-field>
<field-name>minimumspreadpctg</field-name>
<column-name>MINIMUMSPREADPCTG</column-name>
</cmp-field>
<cmp-field>
<field-name>weight</field-name>
<column-name>WEIGHT</column-name>
</cmp-field>
<cmp-field>
<field-name>totalexcessinvforavail</field-name>
<column-name>TOTALEXCESSINVFORAVAIL</column-name>
</cmp-field>
<cmp-field>
<field-name>skusetid</field-name>
<column-name>SKUSETID</column-name>
</cmp-field>
<cmp-field>
<field-name>markdownlevel</field-name>
<column-name>MARKDOWNLEVEL</column-name>
</cmp-field>
<cmp-field>
<field-name>createddate</field-name>
<column-name>CREATEDDATE</column-name>
</cmp-field>
<cmp-field>
<field-name>createdby</field-name>
<column-name>CREATEDBY</column-name>
</cmp-field>
<cmp-field>
<field-name>modifieddate</field-name>
<column-name>MODIFIEDDATE</column-name>
</cmp-field>
<cmp-field>
<field-name>modifiedby</field-name>
<column-name>MODIFIEDBY</column-name>
</cmp-field>
<cmp-field>
<field-name>preorder</field-name>
<column-name>PREORDER</column-name>
</cmp-field>
<cmp-field>
<field-name>instoredate</field-name>
<column-name>INSTOREDATE</column-name>
</cmp-field>
<!-- <optimistic-column>MODIFIEDDATE</optimistic-column> -->
</enterprise-beans>
</jbosscmp-jdbc>
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4032338#4032338
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4032338
19Â years
[JBoss Seam] - Confusion on Conversation, Event-Observe, and Bijection
by bsmithjj
Hello,
I have a SFSB1 - it has an a field that is marked @In @Out. This same bean has an @Observer method that listens for an event raised by another SFSB2.
Here is the trouble I am having. In a conversation, I click a link which invokes a method on SFSB2 - this method in SFSB2 is annotated with @RaiseEvent("MyEvent"), which SFSB1 is 'Observing'. When the @Observer("MyEvent") method gets invoked (due to the event), SFSB1 is throwing a NullPointerException on the field marked @In @Out.
| 09:28:35,015 ERROR org.jboss.seam.exceptions.DebugPageHandler - redirecting to debug page
| org.jboss.seam.RequiredException: @Out attribute requires non-null value: realmManager.application
| ....
|
When I coded this, I assumed that @RaiseEvent would fire after outjection occurs on the SFSB1 method - i.e.
invoke SFSB1 method
- @In occurs
- method proceeds
- @Out occurs
- @RaiseEvent fires
from the exception, this looks like what is actually happening is:
invoke SFSB1 method
- @In occurs
- method proceeds
- @RaiseEvent fires
- @Out occurs (?)
Is this second case what is actually happending? If so, isn't the first case a better way to go if you want to have bijection work with raise+observe events?
Thanks
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4032337#4032337
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4032337
19Â years