Lotus Notes / Domino Sonstiges > Java und .NET mit Notes/Domino

Java Web Frameworks

<< < (5/7) > >>

flaite:
Wenn nichts auf der Seite steht, steht meistens was im logfile.
access muss irgendwo im Request oder Session-Scope gebunden sein.
Probeweise kannst du auch testen, ob nicht vielleicht das access Objekt null ist.


--- Code: ---<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>

<f:view>
<h1>Display Access Models</h1>
<h:outputText value="#{accessItem}" />
</f:view>

--- Ende Code ---

Mark³:
das access-Objekt ist eine managed-bean im request-Scope:

--- Code: ---<managed-bean>
<managed-bean-name>access</managed-bean-name>
<managed-bean-class>com.ext.portlet.access.ui.AccessBean</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
                                <managed-property>
<property-name>accessNo</property-name>
<value>&lt;accessNo&gt;</value>
</managed-property>
</managed-bean>

--- Ende Code ---

Hier ist die index.jsp, da klappt alles wie gewünscht:

--- Code: ---<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>

<f:view>
<h1><h:outputText value="Zutrittsverwaltung JSF Portlet" /></h1>

<h3><h:outputText value="Add an access entry to the database:" />
</h3>

<h:form>
<h:messages />

<br />
<h:outputText value="Access Model:" />
<h:inputText id="accessNo" value="#{access.accessNo}" required="true" />

<br />
<br />
<h:commandButton value="Add access"
actionListener="#{access.addAccess}" />
<br />
<h:commandButton action="#{access.displayAccessEntries}" value="Display Access Models" immediate="true" />
</h:form>
</f:view>

--- Ende Code ---

access.displayAccessEntries liefert den String "success", der wiederum zur Seite display_access_entries.jsp navigiert. Das scheint auch noch zu klappen.
Dort soll der Datentable dann so gefüllt werden:


--- Code: ---<h:dataTable headerClass="portlet-section-header"
rowClasses="portlet-section-body,portlet-section-header-alternate"
value="#{access.getAllAccessEntries}" var="accessItem">

--- Ende Code ---

Die Variable accessItem kommt nur in ideser Datei vor, muss ich die noch irgendwo anders deklarieren? Ich dachte, dass der dataTable automatisch die var=-Variable verwaltet und befüllt.

Meine AccessBean sieht so aus:


--- Code: ---...
public void addAccess(ActionEvent actionEvent) {
FacesContext facesContext = FacesContext.getCurrentInstance();
try {
AccessEntryLocalServiceUtil.addAccess(getAccessNo(), getEmployeeId());
} catch (Exception e) {
FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR, "Error adding access.", e.toString());
facesContext.addMessage(null, message);
e.printStackTrace();
return;
}
FacesMessage message = new FacesMessage(getAccessNo() + " was added successfully.");
facesContext.addMessage(null, message);
setAccessNo("");
}
public String displayAccessEntries() {
return "success";
}
public List getAllAccessEntries() {
List accessEntries = new ArrayList();
try {
accessEntries = AccessEntryLocalServiceUtil.getAll();
} catch (Exception e) {
e.printStackTrace();
}
return accessEntries;
}
...

--- Ende Code ---

flaite:
Muss es nicht heissen:

value="#{access.allAccessEntries}" var="accessItem">?
Ohne get?
Kannst du nicht Generics Listen verwenden Java5?
List<t>

Du kannst auch an verschiedenen Punkten breakpoints setzen und dann schauen wo genau der Fehler auftritt.

Mark³:
das mit access.allAccessEntries hört sich gut an, wäre analog zu meiner Vorlage. Wo ist denn die Eigenschaft allAccessEntries definiert? Steckt das irgendwo in den automatisch generierten Wrappern?

Mark³:
weitere Probleme sind noch, dass irgendwelche Appenders für Log4j nicht gefunden werden und alle Logs in die Konsole gehen, daher fehlen mir ständig genaue Fehlermeldungen.
Hab schon ne log4j.xml gefunden und da appender angehängt für Textdatei, wird aber nicht genutzt.
Und er findet keine Resource bundle für mich, Locale name null or empty, ignoring

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln