JavaServer Faces és ODC eszközök - Kiadási megjegyzések

© Copyright International Business Machines Corporation 2006. Minden jog fenntartva. Az USA kormányzati felhasználóinak jogkorlátozása: A használatot, a másolást és a nyilvánosságra hozatalt az IBM® Corporation vállalattal kötött GSA ADP Schedule Contract korlátozza.

Kiadási megjegyzések

1.0 Korlátozások
   1.1 A betűkép ügyfél összetevők és az ügyféladatok elévültek
   1.2 7-es változat előtti JSF alkalmazások áttelepítése
   1.3 Fa módosítása a WDO-ból SDO-ba áthelyezéskor
   1.4 A hx:commandExButton mostmár megfelelően dolgozza fel a képet
2.0 Ismert problémák és elkerülésük
   2.1 A jspPanel style és styleClass címkeattribútumai már nem érhetők el
   2.2 Pontatlan figyelmeztető párbeszédablak jelenik meg a projekt importáláskor
   2.3 Több ügyféladat modell oldalanként
   2.4 V7.0+ változatban lévő ügyféladatokat használó portál kisalkalmazások összeállítása
   2.5 Lapokból álló párbeszédablak százalékként megadott magassággal
   2.6 Lapokból álló párbeszédablak fülei szigorú módban
   2.7 A hx:convertDateTime nem működik megfelelően az arab naptárakkal
   2.8 WebSphere cél futási környezet megadásakor győződjön meg róla, hogy a WebSphere projektrész ki van választva
   2.9 A JWL DataTable oszlop igazítása helytelen ha loose.dtd-t és százalékkal megadott szélességű oszlopokat használ
   2.10 A hx:panelDialog párbeszédablakban a "relatív" pozicionálás nem mindig működik megfelelően, ha az pozicionáláshoz használt alapcímkét görgeti
   2.11 Nem lehet AJAX-ot kezelő párbeszédablakba helyezni az olyan adattáblát, amelyben a sor kiválasztás engedélyezve van
   2.12 Az ajaxExternalRequest nem mindig működik megfelelően IE alatt ha párbeszédablak azonosítója a cél oldalon és a forrás oldalon nem egyezik meg
   2.13 A hx:ajaxRefreshRequest és az egyéb AJAX címkék inProgresss attribútuma nem működik
   2.14 A hxinputHelperTypeahead nem kezeli megfelelően a szóközöket, százalék jeleket valamint és jeleket tartalmazó értékek keresését
   2.15 A hx:panelDialog helytelenül kerülhet pozicionálásra a Firefox 1.5.0.8 és újabb változataiban
   2.16 A hx:pagerDeluxe nem kerül megfelelően feldolgozásra ha a styleClass nem "pagerDeluxe"

1.0 Korlátozások

1.1 A betűkép ügyfél összetevők és az ügyféladatok elévültek

Az alábbiak elavultak, és használatuk már nem ajánlott:

A Fa <odc:tree> és a Diagram <odc:graphDraw> használhat kiszolgálóadatokat.

1.2 7-es változat előtti JSF alkalmazások áttelepítése

Ha a JSF JAR fájlok áttelepítése nélkül importál egy 7-es változat előtti alkalmazást, és folytatja a fejlesztését, akkor a 7-es változat új címkéi nem lesznek benne a projekt JAR fájljaiban, és nem lesznek elérhetőek futás közben.   Gondoskodjék róla, hogy a 7-es változat előtti JAR fájlok át legyenek telepítve.

1.3 Fa módosítása a WDO-ból SDO-ba áthelyezéskor

Az <odc:treeNodeAttr> fa vezérlő címke más értékeket használ a saját className attribútumához SDO illetve WSO adatok kötésekor. Ha egy projektet átvett egy WDO-6 (például WebSphere® Application Server 5.1 kiszolgálót) használó kiszolgálóról egy SDO-t (például WebSphere Application Server 6.1 kiszolgálót) használó kiszolgálóra, akkor a probléma kijavításának legegyszerűbb módja a fa vezérlőelemek törlése majd ismételt létrehozása.  

1.4 A hx:commandExButton mostmár megfelelően dolgozza fel a képet

Ha a termék 6.0 változatában egy <hx:commandExButton> Submit típusú és címkével rendelkezik, akkor csak egy háttérkép (Példáulvalue="submit" image="button.gif") kerül feldolgozásra (nem a kép és a címke). A probléma a 7.0 változatban ki van javítva. A javítás azt jelenti, hogy a címkével és önálló háttérképpel rendelkező gombok másként kerülnek feldolgozásra a 7.0 változatban mint a 6.0 változatban.

Ugyanígy ha egy <hx:commandExButton> típusa Reset és rendelkezik önálló háttérképpel (vagy háttérképpel és címkével), akkor csak a háttérkép kerül feldolgozásra, és a gombot a rendszer küldés gombként kezeli (a gomb típusát figyelmen kívül hagyja). A probléma a 7.0 változatban ki van javítva. A javítás azt jelenti, hogy a Reset típusú gombok nem elküldik az oldalt, hanem alaphelyzetbe állítják.

2.0 Ismert problémák és elkerülésük

2.1 A jspPanel style és styleClass címkeattribútumai már nem érhetek el

A <jspPanel> style és styleClass címkeattribútumai már nem elérhetőek. Ezek az attribútumok már nem használatosak a JSP panelösszetevő feldolgozásakor.

Ha a termék egy előző változatával létrehozott alkalmazást importál, akkor a <jspPanel> címkék hibát fognak megjeleníteni. A hibák megoldásához a Forrás nézetben szerkessze a JSP forrást, és távolítson el minden style és styleClass attribútumot a projekt minden <jspPanel> címkéjéből.

2.2 Pontatlan figyelmeztető párbeszédablak jelenik meg a projekt importáláskor

Ha a termék korábbi változatával létrehozott munkaterületre importál projekteket, akkor egy párbeszédablak jelezheti, hogy a Faces támogatás telepítésre került, de nincs cél futási környezet kiválasztva a projekthez. Néha ez a figyelmeztetés nem pontos, és a futási környezet megfelelően meghatározásra kerül az áttérési folyamat befejezése után. Ha ellenőrizni szeretné, hogy a futási környezet be van-e állítva, akkor kattintson a jobb egérgombbal a Projekt > Tulajdonságok elemre, majd válassza az előugró menü Cél futási környezetek menüpontját. Ha bármelyik meghatározott kiszolgáló mellett jelölőnégyzet jelenik meg, akkor nincs további teendő, ellenkező esetben ki kell választani egy kiszolgálót.

2.3 Több ügyféladat modell oldalanként

Megjegyzés: Erre a kerülő megoldásra nincs szükség ha az ügyféladat modellek ugyanabból az oldaladat csomópontból, vagy azonos nevű oldaladat csomópontokból kerültek létrehozásra.

Ha a 7.0 változatban több azonos komponens osztályból létrehozott ügyfél adat modell van egy oldalon, akkor a második ecore és emap fájl hibásan kerül létrehozásra (vagy ismételten létrehozásra) a második modellhez. Az áttérési kézikönyvnek megfelelően az ügyféladat projektek átvételekor az ügyféladat modelleket újra elő kell állítani, hogy ez hatással legyen a több ügyféladat modellel rendelkező oldalakat tartalmazó átvett projektekre. Az alábbiakban egy egyszerű példahelyzetet mutatunk be:

  1. Létrehoz két oldaladatot a java.util.Date komponens alapján, például a myDate1 és a myDate2 adatokat.
  2. Mindkét oldaladathoz óazonos nevű ügyféladat modellt hoz létre a következő sorrendben: először az myDate1, majd a myDate2 adathoz.

Kerülő megoldás: Ha azt szeretné, hogy az oldal mindkét modellel működjön, akkor törölje a myDate2.ecore és a myDate2.emap elemeket a com.ibm.dynwdo4jsmediators csomagból és a megfelelő bejegyzéseket az OdysseyBrowserFramework.properties fájlból.

2.4 V7.0+ változatban lévő ügyféladatokat használó portál kisalkalmazások összeállítása

Az ügyféladatok nagymennyiségű JavaScript információt adnak át az oldalaknak. A korábbi kiadásokban a JavaScript nem volt kódolva. Ez azt jelentette, hogy ha az ügyféladatokat több portál kisalkalmazásban használta ugyanazzal az oldaladat forrással, akkor az oldalhoz kerülő JavaScriopt kimenet ugyanaz volt minden portál kisalkalmazásnál.

Ezt általában akkor alkalmazták, ha az ügyféladatokhoz kötött két portál kisalkalmazás úgy jelenhetett meg, hogy ugyanahhoz az ügyféladat objektumhoz volt kötve (mivel a JavaScript második szakasza felülírja az elsőt). Ez viszont lehetővé teszi a két portál kisalkalmazás közötti együttműködést, mivel az egyikben végzett módosítás mindkét portál kisalkalmazásban megjelenik.

Ez akkor probléma, ha több portál kisalkalmazást szeretne használni egy olyan oldalon, amely egymástól függetlenül működő ügyféladatokat használ. JavaScript hibák jelentkeznek ha két olyan portál kisalkalmazást használ egy oldalon, amelyek más oldaladat forrással rendelkező ügyféladatokat használnak. Emiatt előfordulhat az is, hogy az egyik portál kisalkalmazás nem kerül feldolgozásra.

A problémák kijavítása valamint az ügyféladat portál kisalkalmazások WSRP feletti futtatásának biztosítása érdekében az ügyféladat JavaScript változókat kódolni kell, hogy minden egyes portálnál egyediek legyenek. Így az ügyféladat JavaScript szakaszok egymástól függetlenül működhetnek.

A 7.0 változatban az ügyféladatok kódolásra kerülnek.

Ha ügyféladatokat szeretne megosztani egy oldal portál kisalkalmazásai között, akkor frissítse a web.xml fájlt a következő környezet paraméterekkel:

    <context-param>
        <param-name>com.ibm.faces.ENCODE_DATA</param-name>
        <param-value>false</param-value>
        <description></description>
    </context-param>

A <param-value> false értékre állítása eltávolítja az ügyféladatok kódolását.

Az Encode_Data paraméter használata és ennek hatása az oldaladatokat használó diagram és adatfa összetevőkre

A Diagram és adatfa az oldaladatokat úgy használja, hogy egy XML adatobjektumot helyez el az oldalon. A Diagram és adatfa oldaladatai szorosan hozzá vannak kötve a komponensek ügyféladataihoz. Ezek az adatok alapértelmezésben kódolva vannak. Ha az ügyféladat kódolás eltávolítására szolgáló alábbi <context-param> paramétert beállítja a web.xml fájlban, akkor ezzel eltávolítja a diagram és adatfa oldaladat kódolását. A művelet nincs hatással az oldaladatokat használó egyéb komponensekre. Ha nem kódolja az oldalt és az oldalon két portál kisalkalmazás van, valamint a portál kisalkalmazások diagramot vagy adatfát tartalmaznak, akkor ez problémákat okozhat. A hibák lehetnek JavaScript hibák, illetve az is lehetséges, hogy a portál kisalkalmazás nem jelenik meg megfelelően.

Ahogy az adatok ügyféladatok számára való kódolásának engedélyezéskor, ha két portál kisalkalmazás egymástól függetlenül fut egy oldalon és engedélyezni szeretné a WSRP támogatást, akkor el kell távolítania a következő <context-param> paramétert a web.xml fájlból, vagy be true értékre kell állítania a <param-value> értéket:

    <context-param>
        <param-name>com.ibm.faces.ENCODE_DATA</param-name>
        <param-value>true</param-value>
        <description></description>
    </context-param> 

2.5 Lapokból álló párbeszédablak százalékként megadott magassággal

Az alábbiak az oldal tetejére kerülnek:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

Ennek hatására a webböngészők szabványos módba váltanak. A szabványos módban a HTML és body elemek a tartalomhoz igazodnak és nem töltik ki az ablakot, mint ahogy a díszes módban (alapértelmezett HTML mód).

Ha egy lapokból álló párbeszédablakot helyez el önmagában egy oldalra és a magasság százalékban van megadva, akkor a megjelenítéskor problémák lehetnek a párbeszédablak magasságával.

A hiba kijavítása érdekében helyezze a lapokból álló párbeszédablakot egy olyan tárolóba, amelynek meg van adva a magassága, vagy változtassa meg a doctype típust az oldal tetején a következőre:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

2.6 Lapokból álló párbeszédablak fülei szigorú módban

A fülek megjelenítésével kapcsolatban problémák jelentkeznek a szabványos módban ha a következő doctype van megadva:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

A hibát úgy javíthatja ki, hogy a doctype-ot a következőre módosítja:

     <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

2.7 A hx:convertDateTime nem működik megfelelően az arab naptárakkal

A <hx:convertDateTime> címke nem állít elő helyes JavaScriptet ha arab naptártípus van beállítva. Ennek eredményeként az ügyféloldali ellenőrzés, a bemenet kérés, a dátumválasztó segédlet és a mini naptár nem működik megfelelően. Az előállított JavaScript inicializálásakor egy hiba jelenik meg (vagy a komponens nem működik megfelelően).

Kerülő megoldás: Ne kapcsolja be az ügyféloldali ellenőrzést vagy felszólítást. Ne kapcsolja be a dátumválasztó segédletet, ha arab naptárat használt az átalakítóval.

2.8 WebSphere® cél futási környezet megadásakor győződjön meg róla, hogy a WebSphere projektrész ki van választva

Ha WebSphere® kiszolgáló cél futási környezetet állít be, akkor győződjön meg róla, hogy a WebSphere Web (együttélés) projektrész ki van választva a webprojekthez.  

Kerülő megoldás: A projekt létrehozásakor válassza ki a projektrészt a Dinamikus web projekt varázsló második oldalán, vagy ha a projekt már létezik, akkor a Tulajdonságok párbeszédablak Projektrészek oldalán. Ha WebSphere kiszolgáló céllal rendelkező webprojektet hoz létre és a projekt varázsló első oldalán a Konfigurációk legördülő listából a "Projektrész" vagy a "Dinamikus web projekt XDoclet-tel" elemet választja, akkor a WebSphere web (együttélés) projektrész automatikusan kiválasztásra kerül. A projektrész kiválasztásához továbbléphet a varázsló következő oldalára. Ha a Konfigurációk lista "<egyéni>" elemét választja, akkor a WebSphere futási környezet célként való beállításakor a projektrész megfelelően kiválasztásra kerül.

2.9 JWL DataTable oszlop igazítása helytelen ha loose.dtd-t és százalékkal megadott szélességű oszlopokat használ

Ha a <hx:columnEx> címkét használja egy <hx:dataTableEx> címkén belül és a vízszintes görgetés engedélyezve van (a scrollSize be van állítva), valamint a tábla néhány oszlopának szélessége százalékban van megadva, akkor az előállított táblában az oszlop fejlécek és az oszlop tartalom nem biztos egymáshoz lesz igazítva, amennyiben az oldal doctype típusát a böngésző W3C szabvány szerint értélmezi (W3C transitional helyett). Ez történik például ha a doctype címke egy loose.dtd deklarációt tartalmaz.
Kerülő megoldás: Adjon meg rögzített szélességet az oszlopoknak (ne százalékosat), vagy győződjön meg róla, hogy a doctype címke transitional típusra kerül feloldásra (például távolítsa el a loose.dtd deklarációt).

2.10 A hx:panelDialog párbeszédablakban a "relatív" pozicionálás nem mindig működik megfelelően, ha az pozicionáláshoz használt alapcímkét görgeti

Ha egy <hx:panelDialog> címkében a pozicionálás (vízszintes vagy függőleges) relatívra van állítva és a pozicionáláshoz alapként használt címkét (az a címke, amelyhez relatívan van pozicionálva a párbeszédablak) tartalmazó oldal úgy van görgetve, hogy a címke megjelenik, és az oldal nincs a tetejére görgetve, akkor a párbeszédablak a megjelenítéskor rosszul kerülhet pozicionálásra (általában túl fentre vagy túl baloldalra kerül).

Kerülő megoldás: Ha relatív pozicionálásra van szükség, akkor győződjön meg róla, hogy az alapcímke közel van az oldal tetejéhez. Vagy használjon más pozicionálási típust.

2.11 Nem lehet AJAX-ot kezelő párbeszédablakba helyezni az olyan adattáblát, amelyben a sor kiválasztás engedélyezve van

Ha egy adattábla (<h:dataTable> vagy <hx:dataTableEx>) egy AJAX-ot kezelő párbeszédablakban van és az adattáblán engedélyezve van a sorok kiválasztása (a <hx:inputRowSelect> benne van a táblában), akkor a kijelölés oszlopban található jelölőnégyzetek a tábla AJAX-on keresztüli újra lehívásakor nem működnek megfelelően. Az első feldolgozáskor megfelelően működik.

Kerülő megoldás: Ennek a problémának jelenleg nincs kerülő megoldása. Ne helyezzen táblázatot az AJAX-ot kezelő párbeszédablakokba.

2.12 Az ajaxExternalRequest nem mindig működik megfelelően IE alatt ha párbeszédablak azonosítója a cél oldalon és a forrás oldalon nem egyezik meg

A <hx:ajaxExternalRequest> nem működik megfelelően Internet Explorer alatt, ha forrás attribútum által megadott párbeszédablak azonosító, amely a cél oldalon kerül lekérdezésre, különbözik attól a párbeszédablak azonosítótól, amelyhez a <hx:ajaxExternalRequest> csatlakoztatva van a forrásoldalon. Például: <hx:panel id="panel1"><hx:ajaxExternalRequest  source="panel999" /><hx:panel>. A probléma csak Internet Explorer alatt jelentkezik és csak akkor, ha a cél ablakrész egy rács, keret vagy elrendezés (olyan ablakrész, amely HTML táblázatként kerül előállításra).

Kerülő megoldás: Gondoskodjon róla, hogy az azonosítók megegyezzenek, vagy tördelje az ablakrészt egy panelGroup csoportba.

2.13 A hx:ajaxRefreshRequest és az egyéb AJAX címkék inProgresss attribútuma nem működik

A <hx:ajaxRefreshRequest>, <hx:ajaxRefreshSubmit>, <hx:ajaxExternalRequest> és <hx:inputHelperTypeahead> címke inProgresss attribútuma nem működik. Semmilyen hatása nincs annak, ha értéket ad meg az attribútumnak. A jövőbeni kiadásokkal való kompatibilitás biztosítása érdekében ne állítson be értéket.

2.14 A hxinputHelperTypeahead nem kezeli megfelelően a szóközöket, százalék jeleket valamint és jeleket tartalmazó értékek keresését

Ha a <hx:inputHelperTypeahead> egy beviteli mezőhöz van társítva és egy szóköz és/vagy központozó karaktert (például és jelet vagy százalék jelet) ír be a mezőbe, akkor a javaslatok listája nem fog olyan "találatot" tartalmazni, amely tartalmazza ezeket a karaktereket. Ha például a felhasználó egy % jelet ír be, akkor nem fog egyetlen találatot sem kapni, még akkor sem, ha a "szótárban" vannak % jellel kezdődő szavak.

2.15 A hx:panelDialog helytelenül kerülhet pozicionálásra a Firefox 1.5.0.8 és újabb változataiban

Néhány HTML DOM attribútum kezelésének Firefox 1.5.0.8 változatban való módosítása miatt a panelDialog ablakrészek nem biztos hogy megfelelően pozicionálva kerülnek feldolgozásra a Firefox böngészőben. A probléma leginkább akkor jelentkezik, ha egy ablakrész relatív módon van pozicionálva, de akkor is jelentkezhet, ha a törzs tartalom mérete "kisebb" mint a böngésző ablak magassága (azaz amikor az oldalt nem lehet függőlegesen görgetni).

Kerülő megoldás: A problémát néha megkerülheti úgy, hogy tartalmat ad hozzá a törzshöz (akár szóközszerű karaktereket is, például egy beállított magassággal rendelkező <div> címkét). A böngészőablak és a tartalom pontos méretétől függ, hogy így ki lehet-e kerülni a problémát.

2.16 A hx:pagerDeluxe nem kerül megfelelően feldolgozásra ha a styleClass nem "pagerDeluxe"

A <hx:pagerDeluxe> nem állítja elő a helyes HTML leírónyelvet, ha a styleClass nem az alapértelmezett pagerDeluxe értékre van állítva. A lapozó gombjai mindig az alapértelmezett osztálynevet használó osztálynevekkel kerülnek előállításra.

Kerülő megoldás: