@Scope ("Anfrage") funktioniert nicht
Ich experimentiere mit JSF und Primefaces (JSF 2.0.2, PrimeFaces 3.0.5, Spring 3.0.0). Es scheint, dass ich von einer XHTML-Seite wie z. B. nicht auf Managed Bean zugreifen kann
<h:inputText id="lastName" value="#{personalBean.personal_Basic.firstName}" label="Last Name" required="true" />
Die Anforderung beginnt mit dem Aufruf einer Befehlsverknüpfung an die Bean-Methode, den Dienst und gibt die Seite zurück. Ich konnte in Bedienerkonsole Bean sehen, Service-Methoden werden ausgeführt. Ich sehe nichts, wenn ich versuche, Beans-Attribute wie oben zu verwenden. Ich kann jedoch auf die Bean mit Sitzungsbereich zugreifen, die für die Sitzungsverwaltung des Benutzers verwendet wird.
Entschuldigung, wenn diese Frage zu naiv ist. Jede Eingabe zur Lösung des Problems wird sehr geschätzt.
Unten sind meine Codeschnipsel. So nenne ich die Bohne:
<h:form>
<p:commandLink id="ajax" actionListener="#{personalBean.getPersonalInfo}" style="margin-left:5px;">
<h:outputText value="Personal Info" /> <br/>
</p:commandLink>
</h:form>
Unten sehen Sie die verwaltete Bean mit Anforderungsbereich.
package com.test.model;
@ManagedBean
@Scope("request")
public class PersonalBean implements Serializable {
private static final long serialVersionUID = 199L;
private Personal_Basic personal_Basic;
private IPersonalService personalService;
@Inject
public PersonalBean(final IPersonalService personalService) {
this.personalService = personalService;
}
public String getPersonalInfo() {
System.out.println("\n\nPersonalBean#getPersonalInfo called...**");
User user = null;
Personal_Basic personal_Basic = personalService.getPersonalBasic();
this.setPersonal_Basic(personal_Basic);
System.out.println("personal_Basic data:"+personal_Basic);
System.out.println("PersonalBean#getPersonalInfo ended...");
return "/page/personal.html";
}
// Getters/setters for class members followed
}
Die PersonalService-Implementierung ist mit @Service gekennzeichnet.
Unten ist der Auszug aus der Frühlingskonfiguration xml.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<context:annotation-config/>
<context:component-scan base-package="com.test"/>
...................
...................
</beans>
Unten ist der Auszug aus faces-config.xml
<?xml version="1.0"?>
<faces-config xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
version="2.0">
<application>
<el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver>
<resource-bundle>
<base-name>Messages</base-name>
<var>msg</var>
</resource-bundle>
<locale-config>
<default-locale>en</default-locale>
</locale-config>
</application>
...........................
</faces-config>