[jboss-user] [JBoss Seam] - Re: jBPM can't evaluate method
smithbstl
do-not-reply at jboss.com
Tue Apr 10 17:03:55 EDT 2007
I have reworked this a bit but am still having problems getting any methods called from jPdl. As far as I can tell, I am closely following the DVD Seam example
Here is my pageflow.jdpl.xml
<pageflow-definition
| xmlns="http://jboss.com/products/seam/pageflow"
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
| xsi:schemaLocation= "http://jboss.com/products/seam/pageflow http://jboss.com/products/seam/pageflow-1.2.xsd"
| name="serviceRequestCreation">
|
| <start-state name="start">
| <transition to="requestSearch"/>
| </start-state>
| <page name="requestSearch" view-id="/AddressLookup.xhtml">
| <redirect/>
| <transition name="viewRequests" to="requestListing">
| <action expression="#{requestEntry.viewRequests}"/>
| </transition>
| </page>
| <page name="requestListing" view-id="/AddressRequestListing.xhtml">
| <redirect/>
| <end-conversation/>
| </page>
| </pageflow-definition>
SFSB
@Stateful
| @Name("requestEntry")
| public class RequestEntryAction implements com.stlouiscity.csb.ejb.action.RequestEntry {
|
| @PersistenceContext(unitName="CSB_Oracle", type=EXTENDED)
| private EntityManager em;
|
| @In(create=true)
| private Address address;
|
| @In(create=true, required=false)
| private AddressLookup addressLookup;
|
| @DataModel("addresses")
| private List<ParcelAddress> addresses;
|
| @DataModelSelection(value="addresses")
| @Out(required=false)
| private ParcelAddress selectedAddress;
|
| @DataModel("requests")
| private List<ServiceRequest> requests;
|
| @DataModelSelection(value="requests")
| private ServiceRequest selectedRequest;
|
| /**
| * Creates a new instance of RequestEntryAction
| */
| public RequestEntryAction() {
| }
|
| @Begin(join=true)
| public void findAddresses() {
|
| if (address.getStreetName() != null) {
| System.out.println("Address Is NOT NULL");
| //Find ParcelAddress
| Query q = em.createQuery("Select a From ParcelAddress a Where" +
| " (a.structureAddress.nlc.streetDirection = :streetDirection OR :streetDirection IS NULL) AND" +
| " (lower(a.structureAddress.nlc.streetName) LIKE :street) AND" +
| " (((a.structureAddress.structureAddressPK.houseNumber = :houseNumber) OR" +
| " (:houseNumber BETWEEN a.structureAddress.houseLow AND a.structureAddress.houseHigh)) OR (:houseNumber IS NULL))");
| q.setParameter("houseNumber",address.getHouseNumber());
| q.setParameter("streetDirection",address.getStreetDirection());
| q.setParameter("street",address.getStreetName().toLowerCase() + "%");
|
| addresses = q.getResultList();
| } else {
| System.out.println("Address IS NULL");
| }
| }
|
| @Begin(nested=true, pageflow="serviceRequestCreation")
| public void viewRequests() {
| System.out.println("**********Started PageFlow*************");
| }
|
| @End
| public void findRequests(ParcelAddress address) {
| System.out.println("**********Entered findRequests*************");
| System.out.println("**********Selected Address: " + address.toString());
| Query q = em.createQuery("Select s From ServiceRequest s Where" +
| " s.parcelAddress.parcelAddressPK.houseNumber = :houseNumber AND" +
| " s.parcelAddress.parcelAddressPK.houseSuffix = :houseSuffix AND" +
| " s.parcelAddress.parcelAddressPK.nlc = :nlc AND" +
| " s.parcelAddress.parcelAddressPK.cityBlock = :cityBlock AND" +
| " s.parcelAddress.parcelAddressPK.parcelNumber = :parcelNumber)");
| q.setParameter("houseNumber", address.getParcelAddressPK().getHouseNumber());
| q.setParameter("houseSuffix", address.getParcelAddressPK().getHouseSuffix());
| q.setParameter("nlc", address.getParcelAddressPK().getNlc());
| q.setParameter("cityBlock", address.getParcelAddressPK().getCityBlock());
| q.setParameter("parcelNumber", address.getParcelAddressPK().getParcelNumber());
| requests = q.getResultList();
| }
|
| @Remove @Destroy
| public void destroy() {
|
| }
Here is the link I am using to call the Transition. It is in the context of an h:dataTable column.
<h:column>
| <f:facet name="header">
| <h:outputText value="#{msgs['ServiceRequestList.action']}"/>
| </f:facet>
| <h:commandLink id="viewRequestsLink"
| action="viewRequests"
| rendered="#{not empty addressRow.requestCollection}"
| value="#{msgs['AddressList.viewRequest']}">
| </h:commandLink>
| </h:column>
When I click the link, the page just reloads, the transition is never activated. Its driving me nuts.
Thanks for any help
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4036132#4036132
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4036132
More information about the jboss-user
mailing list