Die meisten Beispielgeschäftsseiten verwenden die folgenden Implementierungsmethoden. Diese Seite verwendet das Geschäft 'InFashion' als Beispiel; die Methoden können jedoch auf alle Beispielgeschäfte angewendet werden. Weitere Informationen zu spezifischen Methoden für bestimmte Seiten finden Sie in der Referenzdatei für die entsprechende Seite.
Multikultureller Inhalt
Die Beispielgeschäftsseiten werden außerdem zum Anzeigen von multikulturellem Inhalt verwendet. Dies bedeutet, dass dieselbe Gruppe von Seiten für unterschiedliche Ländereinstellungen verwendet werden kann. Der größte Teil des Codes für die Aktivierung der multikulturellen Anzeige befindet sich in der Datei getResource.jsp. Die Datei getResource.jsp führt die folgenden Aktionen aus:
Damit eine JSP-Datei (JavaServer Page) auf die oben genannten Beispiele zugreifen kann, muss getResource.jsp in der JSP-Datei enthalten sein, was durch Verwendung der folgenden Anweisung INCLUDE bei der Kompilierzeit erreicht wird:
<%@ include file="include/getResource.jsp"%>
Da getResource.jsp in fast allen JSP-Dateien für das Beispielgeschäft enthalten ist, kann diese Datei in einer einzigen Anforderung mehrmals ausgeführt werden. Um eine Verdopplung des Aufwands zu vermeiden, werden viele der Informationen, die auf dieser Seite abgerufen werden, im Kontext der Anforderung gespeichert. Beispiel:
String storeDir = (String) request.getAttribute("storeDir"); String includeDir = (String) request.getAttribute("includeDir"); String fileDir = (String) request.getAttribute("fileDir"); String bundleDir = (String) request.getAttribute("bundleDir");
String storeName = "";
if (storeDir == null) {
storeDir = sdb.getJspPath(); fileDir = sdb.getFilePath(); includeDir = storeDir + "include" + "/"; bundleDir = sdb.getDirectory(); storeName = sdb.getDescription(cmdcontext.getLanguageId()).getDisplayName(); request.setAttribute("storeName", storeName); request.setAttribute("storeDir", storeDir); request.setAttribute("fileDir", fileDir); request.setAttribute("includeDir", includeDir); request.setAttribute("bundleDir", bundleDir); }
Sprachspezifische Nachrichten
Sprachspezifische Nachrichten (z. B. "Vielen Dank für Ihre
Bestellung!") werden in
Eigenschaftsdateien von Ressourcen-Bundles gespeichert. Diese Dateien befinden sich in dem folgenden Verzeichnis:
laufwerk:\WebSphere\AppServer\installedApps\WC_Enterprise_App_exemplarname.ear\wcstores.war\WEB-INF\classes\storedir
laufwerk:\Programme\WebSphere\AppServer\installedApps\WC_Enterprise_App_exemplarname.ear\wcstores.war\WEB-INF\classes\geschäftsverzeichnis
/usr/WebSphere/AppServer/installedApps/WC_Enterprise_App_exemplarname.ear/wcstores.war/WEB-INF/classes/geschäftsverzeichnis
/opt/WebSphere/Appserver/installedApps/WC_Enterprise_App_exemplarname.ear/wcstores.war/WEB-INF/classes/geschäftsverzeichnis
/opt/WebSphere/AppServer/installedApps/WC_Enterprise_App_exemplarname.ear/wcstores.war/WEB-INF/classes/geschäftsverzeichnis
/QIBM/UserData/WebASAdv4/WAS_exemplarname/installedApps/WC_Enterprise_App_exemplarname.ear/wcstores.war/WEB-INF/classes/geschäftsverzeichnis
Heißt Ihr Geschäftsverzeichnis beispielsweise
"geschäftsverzeichnis", heißt die Eigenschaftsdatei für Deutsch:
laufwerk:\laufwerk:\WebSphere\AppServer\installedApps\WC_Enterprise_App_exemplarname.ear\wcstores.war\WEB-INF\classes\geschäftsverzeichnis
\infashiontext_de_DE.properties.
laufwerk:\Programme\WebSphere\AppServer\installedApps\WC_Enterprise_App_exemplarname.ear\wcstores.war\WEB-INF\classes\geschäftsverzeichnis
/usr/WebSphere/AppServer/installedApps/WC_Enterprise_App_exemplarname.ear/wcstores.war/WEB-INF/classes/geschäftsverzeichnis/infashiontext_de_DE.properties.
/QIBM/UserData/WebASAdv4/WAS_exemplarname/installedApps/WC_Enterprise_App_exemplarname.ear/wcstores.war/WEB-INF/classes/geschäftsverzeichnis/infashiontext_de_DE.properties
Der Inhalt dieser Datei wird unter Verwendung der Java-API 'java.util.ResourceBundle' aus der JSP-Datei getResource.jsp geladen. Das Bundle wird als Variable infashiontext gespeichert. Eine sprachspezifische Nachricht wird wie folgt angezeigt:
<title><%=infashiontext.getString("REGISTER_TITLE")%></title>
Inhaltscodierung festlegen
Die meisten modernen Browser verstehen HTML-Daten, die in der UTF-8-Codierung codiert sind. Einige ältere Browser verstehen jedoch unter Umständen nur eine native Codierung. Ältere Browser für Japanisch verstehen beispielsweise eventuell nur HTML-Daten, die in der Codierung "Shift_JIS" codiert wurden. Um dieses Problem zu lösen gibt das Beispielgeschäft die sprachspezifische Codierung in den Eigenschaftsdateien der Ressourcen-Bundles als Eigenschaftsnamen ENCODESTATEMENT an. Die Eigenschaftsdatei für Englisch infashiontext_de_DE.properties enthält beispielsweise den folgenden Eintrag:
ENCODESTATEMENT = text/html; charset=ISO_8859-1
Für einzelne JSP-Dateien wird die Codierung unter Verwendung des JSP-Anforderungsobjekts wie folgt festgelegt:
<% response.setContentType(infashiontext.getString("ENCODESTATEMENT")); %>
Das Festlegen des Codierungstyps muss in der JSP-Datei so weit vorne wie möglich erfolgen, da der HTTP-Header vor dem HTML-Inhalt gesendet wird. Wenn Sie also den Inhaltstyp (der als HTTP-Header gesendet wird) nach dem HTML-Inhalt festlegen, erzielen Sie möglicherweise nicht den gewünschten Effekt. Unter Umständen kann der Browser die Daten nicht richtig anzeigen.
Kopfzeile, Fußzeile und linken Navigationsrahmen einfügen
Fast alle Beispielgeschäftsseiten zeigen die Seiten für die Kopfzeile (header.jsp), die Fußzeile (footer.jsp) und den linken Navigationsrahmen (sidebar.jsp) an. Diese werden in die anderen JSP-Dateien mit der folgenden Anweisung INCLUDE für die Ausführungszeit aufgenommen:
<% String incfile;
incfile = includeDir + "header.jsp"; %> <jsp:include page="<%=incfile%>" flush="true"/>
Wenn Sie die exakte Position der JSP-Dateien kennen, können Sie
den INCLUDE-Prozess durch die folgende Anweisung vereinfachen:
<jsp:include page="/geschäftsverzeichnis/include/header.jsp"/>
Hierbei gilt: header.jsp befindet sich im Verzeichnis geschäftsverzeichnis unter der Dokument-Root der Web-Anwendung.
![]() |