[Installation, Configuration & DEPLOYMENT] - Re: EAR file won't deploy properly
by lescarbonaro
Hi Peter.
Thanks for your reply.
Yes, SettingsEAOImpl is being packaged in the ear, and yes its jar file is included in the application.xml listing.
Have also eliminated the JDK version as a source of the problem. Re-built and re-de-depolyed and got the same error. By the way, I thought I'd point out that there's nothing particularly wrong or strange about the class SettingsEAOImpl... just happens to be the first one in that winstant_ejb jar.
Following my initial post, I have since discovered that the ear that I am generating (Eclipse JEE Europa 3.3.1.1) gives the same error when deployed on another pc, whereas the ear file from a colleague's machine works fine on mine. This led me to believe that there is something wrong with my Eclipse or Ant installations, both of which are next on my list of potential causes of the problem.
Thanks again Peter, and would appreciate any other suggestions/opinions/advice that you or anyone else here can come up with.
Regards,
Les
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4108646#4108646
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4108646
18 years, 5 months
[JBoss Seam] - Re: Activation of SFSB and removal of it by Seam question
by asookazian
package com.cox.beans.session;
|
| import java.util.ArrayList;
| import java.util.Calendar;
| import java.util.GregorianCalendar;
| import java.util.List;
|
| import javax.annotation.PostConstruct;
| import javax.annotation.PreDestroy;
| import javax.ejb.PostActivate;
| import javax.ejb.PrePassivate;
| import javax.ejb.Remove;
| import javax.ejb.Stateful;
| import javax.ejb.TransactionAttribute;
| import javax.ejb.TransactionAttributeType;
| import javax.faces.model.SelectItem;
| import javax.persistence.EntityManager;
| import javax.persistence.PersistenceContext;
|
| import org.jboss.seam.annotations.Destroy;
| import org.jboss.seam.annotations.Factory;
| import org.jboss.seam.annotations.In;
| import org.jboss.seam.annotations.Logger;
| import org.jboss.seam.annotations.Name;
| import org.jboss.seam.annotations.Out;
| import org.jboss.seam.annotations.datamodel.DataModel;
| import org.jboss.seam.annotations.datamodel.DataModelSelectionIndex;
| import org.jboss.seam.log.Log;
|
| import com.cox.beans.entity.TblSecurityAuditNote;
| import com.cox.beans.entity.TblSecurityAuditWorking;
| import com.cox.beans.entity.User;
|
|
|
| @Stateful
| //@Restrict("#{identity.loggedIn}")
| //(a)Scope(ScopeType.SESSION)
| @Name("securityAuditAction")
| public class SecurityAuditAction implements SecurityAuditLocal {
|
| @Logger
| private Log log;
|
| //using EXTENDED for PersistenceContextType was causing premature update transaction commit to DB when clicking 'no' on radio button...
| @PersistenceContext(unitName="boIcomsSecurityAudit")
| private EntityManager em;
|
| @In(required=false) @Out
| private User user;
|
| @In(required=false)
| private TblSecurityAuditNote myNotes[][];
|
| @In(create=true)
| private NoteLocal noteAction;
|
| private List<SelectItem> myRadioButtonList;
|
| @DataModel(value="myAuditList")
| private List myAuditList;
|
| private Object[] myAuditListSelection;
|
| private final int auditNotStarted = 0;
| private final int auditWaitingICOMS = 1;
| private final int auditComplete = 2;
|
| @DataModelSelectionIndex(value="myAuditList")
| //this is the row number of the underlying collection
| private int currentRowNum;
|
| //adding empty constructor callback lifecycle methods for debugging purposes (interceptor will output when they get called)
|
| public SecurityAuditAction() {}
|
| @PostConstruct
| public void postConstruct() {
| log.info("in postConstruct");
| }
|
| @PostActivate
| public void postActivate() {
| log.info("in postActivate");
| }
|
| @PrePassivate
| public void prePassivate() {
| log.info("in prePassivate");
|
| }
|
| @PreDestroy
| public void preDestroy() {
| log.info("in preDestroy");
|
| }
|
| private Object[] getMyAuditListSelection() {
| return (Object[])myAuditList.get(currentRowNum);
| }
|
| //@Begin
| @Factory("myAuditList")
| public void findAuditList()
| {
|
| log.info("in getAuditList(): user.getUserId() = " + user.getUserId() + " user.getBillingId() = " + user.getBillingId());
|
| int employeeId = 900050881; //using btkach id for now;
|
| String networkId = noteAction.getNetworkId()==null?"":noteAction.getNetworkId();
|
| //List myList = em.createQuery("from User u where u.networkId = :networkId").setParameter("networkId", networkId).getResultList();
| //User newUser = (User)myList.get(0);
|
| //employeeId = newUser.getEmployeeId().intValue();
|
| myAuditList = em.createQuery("SELECT gem, tsaw "+
| "FROM TblSecurityAuditWorking tsaw, "+
| "GlobalEmployeeMaster gem "+
| "WHERE tsaw.id.siteId = gem.id.siteId "+
| "AND tsaw.id.employeeNumber = gem.id.employeeNumber "+
| "AND tsaw.reportToId = :employeeId " +
| "ORDER BY tsaw.id.employeeNumber ASC")
| .setParameter("employeeId", employeeId)
| .getResultList();
|
|
| //call method in NoteAction so facelet can render radio buttons appropriately...
| noteAction.setRenderRadioButtons(myAuditList);
|
| log.info("in find(): myAuditList.size() = " + myAuditList.size());
|
| }
|
| public List<SelectItem> getSecurityAuditRadioButtons() {
| myRadioButtonList = new ArrayList<SelectItem>();
| myRadioButtonList.add(new SelectItem("true", "Yes", "Yes it is"));
| myRadioButtonList.add(new SelectItem("false", "No", "No it isn't"));
| return myRadioButtonList;
| }
|
| public String getHeader() {
| return "Please enter your note for the associate";
| }
|
| //@End
| @TransactionAttribute(TransactionAttributeType.REQUIRED) //REQUIRED is default, but added for clarity
| public void submit() {
|
| Object[] myAuditListSelection = getMyAuditListSelection();
|
| TblSecurityAuditWorking tsaw = (TblSecurityAuditWorking)myAuditListSelection[1];
|
| /*ResourceLoader resourceLoader = ResourceLoader.instance();
|
| String[] bundleNames = resourceLoader.getBundleNames();
|
| ResourceBundle resourceBundle = resourceLoader.loadBundle("resources/securityAudit");
| */
|
|
| //determine what status to assign to each row/employee based on answers to radio buttons...
|
| Boolean icomsAccountApproved = tsaw.getIcomsAccountApproved()==null?false:tsaw.getIcomsAccountApproved();
| Boolean adjustmentLimitApproved = tsaw.getAdjustmentLimitApproved()==null?false:tsaw.getAdjustmentLimitApproved();
| Boolean securityLevelApproved = tsaw.getSecurityLevelApproved()==null?false:tsaw.getSecurityLevelApproved();
|
| if ( icomsAccountApproved && adjustmentLimitApproved && securityLevelApproved ) {
| //green
| tsaw.setAuditProgress(auditComplete);
| }
| else if ( !icomsAccountApproved && !adjustmentLimitApproved && !securityLevelApproved ) {
| //red
| tsaw.setAuditProgress(auditNotStarted);
| }
| else {
| //yellow
| tsaw.setAuditProgress(auditWaitingICOMS);
| }
|
|
| // TO DO: determine if quarter and year are pre-populated or not from snapshot (i.e. do we need to do the setter methods here or not for update?)
| //determine quarter and year...
| Calendar cal = new GregorianCalendar();
|
| tsaw.setAuditYear(cal.get(Calendar.YEAR));
|
| int month = cal.get(Calendar.MONTH); // 0=Jan, 1=Feb, ...
|
| if (month <= 2)
| tsaw.setAuditQuarter(1);
| else if (month >= 3 && month <= 5)
| tsaw.setAuditQuarter(2);
| else if (month >= 6 && month <= 8)
| tsaw.setAuditQuarter(3);
| else
| tsaw.setAuditQuarter(4);
|
| em.merge(tsaw);
|
| //check to see if there are any notes for each radio button for this employee/row
| //then update/insert accordingly
|
| //TO DO: move the hard-coding 3 for # of updateable columns in dataTable to resource bundle
|
| // TO DO: noteAction.submit() was moved to action listener attribute in modalPanels...
| //call submit to ensure new note is added to array
| //noteAction.submit();
|
| for (int i = 0; i < 3; i++) {
| TblSecurityAuditNote note = myNotes[currentRowNum];
| if (note != null) {
| log.info("myNotes["+currentRowNum+"]["+i+"]: noteText = " + note.getNoteText());
| em.persist(note);
| }
| }
|
| em.flush();
|
| }
|
|
|
| @Remove @Destroy
| public void destroy() {
|
| }
|
|
|
|
| }
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4108634#4108634
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4108634
18 years, 5 months