I have bean named Person an annotated as @Name("person") with attribute name with getters and setters.
On jsf:
<h:form>
<h:inputText value="#{person.name}" size="20"/>
<s:button type="submit" value="Export" action="#{actions.doExport}"/> </h:form>
On Actions:
@Name("actions")
public class Actions {
@In
public Person person;
public void doExport() {
log.info(new StringBuffer("On Actions.doExport ").toString());
log.info(new StringBuffer("Name entered by user ").append(person.getName()).toString());
}
When I enter name on inputText and submit form, an exception is thrown:
ERROR [SeamPhaseListener] uncaught exception
javax.el.ELException: org.jboss.seam.RequiredException: In attribute requires non-null value: actions.person
What I'm doing wrong?
I've added
@In(create=true) and the exception isn't thrown, but the object person injecte seems to be null.
Seems that when the injection is done, the entity person is not created correctly.