@Factory annotation
harpritt Jul 8, 2007 5:47 AMHi
Appologies if i use the wrong terms to descibe my current problem, im new to SEAM and im just about keeping my head above water
I have 4 dropdown menus that i wish to populate with SelectItem Objects.
I decided the best way (limited knowledge) was to use the @Factory annotation to define the 4 components in a Stateful Session.... and then retrieve them using the #{component1} etc in the drop downs.
(my Stateful session bean contains 4 @Factory annotations)
... Problem is that only one of the components contains any data in the scope so the JSF page complains about requiring not null components.
in the end i settled for standard accessors as below. Any advice as to where i was going wrong wiht the @Factory annotation would be very helpful. Many Thanks
@Stateful
@Name("GsmsCrManager")
@Local(GsmsCrsManager.class)
@Remote(GsmsCrsManager.class)
public class GsmsCrManagerImpl {
public SelectItem[] getCrReasons() {
SelectItem[] crReasons = new SelectItem[7];
crReasons[0] = new SelectItem("Correction of Error or Omission");
crReasons[1] = new SelectItem("Clarification of Existing Content");
crReasons[2] = new SelectItem("New Content");
crReasons[3] = new SelectItem("Change in Operating Procedures");
crReasons[4] = new SelectItem("Change in Regulations");
crReasons[5] = new SelectItem("Change in Equipment");
crReasons[6] = new SelectItem("Change in Organisation");
return crReasons;
}
public SelectItem[] getCrActions() {
SelectItem[] crActions = new SelectItem[5];
crActions[0] = new SelectItem("Create a New document");
crActions[1] = new SelectItem("Edit Existing document");
crActions[2] = new SelectItem("Delete Existing document");
crActions[3] = new SelectItem("Move Existing document");
crActions[4] = new SelectItem("Request an action not covered by the above");
return crActions;
}
public SelectItem[] getCrAudience() {
SelectItem[] crAudience = new SelectItem[5];
crAudience[0] = new SelectItem("Crew");
crAudience[1] = new SelectItem("sdfsd");
crAudience[2] = new SelectItem("asda");
crAudience[3] = new SelectItem("asd
crAudience[4] = new SelectItem("sdfgdsfg");
return crAudience;
}
public SelectItem[] getCrAudienceReviewalUrgency() {
SelectItem[] crAudienceReviewalUrgency = new SelectItem[5];
crAudienceReviewalUrgency[0] = new SelectItem("High");
crAudienceReviewalUrgency[1] = new SelectItem("Medium/High");
crAudienceReviewalUrgency[2] = new SelectItem("Medium");
crAudienceReviewalUrgency[3] = new SelectItem("Low/Medium");
crAudienceReviewalUrgency[4] = new SelectItem("Low");
return crAudienceReviewalUrgency;
}
@Destroy @Remove
public void destroy(){
}
}