© Copyright International Business Machines Corporation 2006. Všechna práva vyhrazena. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM® Corp.
Následující bylo znehodnoceno a nedoporučuje se používat:
- Data klienta a jeho přidružené nástroje (jako zobrazení dat klienta)
- Komponenty klienta Faces
<odc:dataGrid>
(datová mřížka)<odc:webService>
(Web Service)<odc:clientData>
<odc:clientBinder>
Strom
<odc:tree>
a graf<odc:graphDraw>
mohou používat data serveru.
Pokud importujete aplikaci pre-V7 JSF bez migrování souborů JSF JAR a budete pokračovat ve vývoji aplikace, příznaky, které jsou nové v V7, nebudou zahrnuté v souborech JAR projektů a nebudou dostupné v době běhu programu. Ujistěte se, že migrujete pre-V7 JARS.
Značka pro řízení stromu
<odc:treeNodeAttr>
používá různé hodnoty pro atribut className, když se váže k datům SDO a datům WDO. Poté, co migrujete projekt ze serveru, který používá WDO (jako je WebSphere® Application Server 5.1), na server, který používá SDO (jako je WebSphere Application Server 6.1), nejjednodušším způsobem opravy je odebrat a znovu vytvořit všechny ovládací prvky stromu.
Ve verzi v6.0, pokud měl
<hx:commandExButton>
nastaven typ na Zadat a měl štítek a pouze jeden obraz pozadí (například:value="submit" image="button.gif"
), vykreslil se pouze obraz (ne obraz a štítek). Tento problém byl vyřešen ve verzi 7.0. Oprava znamená, že tlačítka, která mají štítek i obraz pozadí, se vykreslí jinak při použití v7.0 než s verzí 6.0.Podobně, pokud byl u tlačítka
<hx:commandExButton>
nastaven typ naReset
a pouze jeden obraz pozadí (nebo obraz pozadí a štítek), vykreslil se pouze obraz a s tlačítkem se zacházelo jako s tlačítkem pro zadání (typ tlačítka se ignoroval). Tento problém byl vyřešen ve verzi 7.0. Oprava znamená, že tlačítka označená typem nastaveným naReset
nyní resetují stránku, místo aby ji zadala.
Atributy příznaků
<jspPanel>
style
astyleClass
již nejsou dostupné. Atributy nebudou použité pro poskytnutí panelové komponenty JSP.Pokud importujete aplikaci JSF vytvořenou v předchozí verzi tohoto produktu, příznaky
<jspPanel>
zobrazí chyby. Abyste chyby vyřešili, odeberte atributystyle
astyleClass
ze všech příznaků<jspPanel>
v projektu tak, že upravíte zdroj JSP v zobrazení Zdroj.
Pokud importujete do pracovního prostoru projekty, které byly vytvořeny s pomocí předchozí verze produktu, možná uvidíte dialogové okno, které vám sdělí, že byla nainstalována podpora Faces, ale žádná cílová běhová komponenta nebyla pro projekt vybrána. V některých případech není toto varování na místě a běhová komponenta bude správně definována po dokončení procesu migrace. Abyste zkontrolovali, zda je běhová komponenta nastavena, klepněte pravým tlačítkem myši na Projekt > Vlastnosti a vyberte Zaměřené běhové komponenty. Pokud se u libovolných definovaných serverů objeví zaškrtávací políčko, nevyžaduje se žádná další akce, jinak vyberte jeden server.
Poznámka: toto náhradní řešení se nevyžaduje, kde se klientské datové modely vytvářejí ze stejného uzlu dat na stránce nebo z uzlů dat na stránce se stejným názvem.
Ve v7.0, když existuje více klientských datových modelů na stránce, vytvořených ze stejných tříd objektů bean, druhý soubor ecore a emap se chybně vytvoří pro druhý model při generování (nebo opakovaném generování). Podle příručky pro migraci, když migrujete klientské datové projekty, klientské datové modely by se měly znovu vygenerovat, takže se projeví dopad na migrované projekty se stránkami obsahujícími více než jeden klientský datový model. Jednoduchý scénář je následující:
- Vytvořte dvoje data na stránce založená na objektu bean java.util.Date, například myDate1 a myDate2.
- Pro každou stránku s daty vytvořte klientský datový model se stejným názvem, v pořadí: myDate1 pak myDate2.
Náhradní řešení: Aby stránka fungovala s oběma modely, odstraňte myDate2.ecore a myDate2.emap z balíku com.ibm.dynwdo4jsmediators a odpovídající záznamy v souboru OdysseyBrowserFramework.properties.
Klientská data nechají vytvořit velké množství výstupu JavaScript™ na stránku. V předchozích vydáních nebyl JavaScript zakódován. To znamenalo, že pokud jste používali klientská data ve více portletech, s pomocí stejného zdroje dat stránky, výstup JavaScript na stránku byl stejný pro všechny portlety.
Toto chování, kde se dva portlety vážou na klientská data, by mohlo vypadat, jako že se váže ke stejnému objektu klientských dat (protože druhá sekce JavaScriptu přepíše první). To postupně umožňuje portletům být v interakci, kdy změna jednoho bude znázorněna v obou.
To je problematické, chcete-li mít na stránce více portletů, které používají klientská data pracující nezávisle na sobě. Chyby JavaScriptu se vyskytují, když máte dva portlety používající klientská data na stejné stránce s různými zdroji dat stránky. To může také způsobit, že se jeden z portletů nevykreslí.
Abyste odstranili tyto problémy a umožnili spuštění portletů klientských dat přes WSRP, musí být proměnné klientských dat JavaScript zakódovány, aby byly jedinečné pro každý portlet. To umožní sekcím JavaScript klientských dat fungovat nezávisle na sobě.
Ve verzi V7.0 budou všechny klientská data kódována.
Pokud chcete sdílet klientská data mezi portlety na stránce, budete muset aktualizovat soubor web.xml následujícími kontextovými parametry:
<context-param>
<param-name>com.ibm.faces.ENCODE_DATA</param-name>
<param-value>false</param-value>
<description></description>
</context-param>Nastavením <param-value> na false odstraníte kódování klientských dat.
Použití parametru Encode_Data a jeho efekt na komponenty Graf a Datový strom používající data na stránce
Graf a Datový strom používají data na stránce vložením datového objektu XML na stránku. Data na stránce pro Graf a Datový strom jsou těsně propojena s klientskými daty pro tyto komponenty. Předvoleně jsou tato data zakódována. Pokud nastavíte níže uvedený parametr <context-param> v souboru web.xml, který se běžně používá pro odstranění kódování klientských dat, bude také odstraněno kódování dat na stránce pro Graf a Datový strom. Žádné jiné komponenty používající data na stránce nebudou ovlivněny. Ponechání dat na stránce bez kódování, což znamená mít dva portlety na stránce, když oba obsahují graf nebo datový strom, může způsobit problémy. Tyto chyby zahrnují chyby JavaScript a/nebo se jeden nebo oba portlety nezobrazí správně.
Jako s klientskými daty pro kódování těchto dat, což umožní běh dvou portletů na stránce nezávisle na sobě a umožnění podpory WSRP, budete muset odstranit následující parametr <context-param> ze souboru web.xml nebo nastavit <param-value> na true:
<context-param>
<param-name>com.ibm.faces.ENCODE_DATA</param-name>
<param-value>true</param-value>
<description></description>
</context-param>
Tento text je umístěn v horní části stránky:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
To způsobí, že webové prohlížeče přejdou do standardního režimu. Ve standardním režimu prvky
HTML
abody
vybírají obsah a nevyplňují okno, jako se to děje v předvoleném HTML režimu (režim quirks).Když je tabulkový panel umístěn na stránku s výškou nastavenou na počet procent, způsobí to zobrazení problémů s výškou okna.
Abyste problém opravili, umístěte tabulkový panel do kontejneru, který má nastavenou výšku, nebo změňte deklaraci DOCTYPE v horní části stránky na:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Existují problémy se zobrazením karet ve standardních režimech, když je deklarace DOCTYPE nastavena na:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
To napraví změna deklarace DOCTYPE na:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Značka
<hx:convertDateTime>
negeneruje správný JavaScript, když je typ kalendáře nastaven na arabský. V důsledku, ověření na straně klienta, výzvy na vstupu, pomocník při výběru dat a mini kalendář, nefungují správně. Když je generovaný JavaScript inicializován, zobrazí se chyba (nebo komponenta nefunguje správně).Náhradní řešení: Nezapínejte ověření na straně klienta nebo zasílání výzev. Nezapínejte pomocníka pro výběr dat, pokud se arabský kalendář používá s konvertorem.
Při zaměření běhové komponenty serveru WebSphere® se ujistěte, že je vybrána fazeta projektu webu WebSphere (Koexistence) pro daný webový projekt.
Náhradní řešení: Vyberte fazetu na druhé stránce průvodce dynamickým webovým projektem při vytváření projektu, nebo přes stránku Fazety projektu dialogu Vlastnosti projektu, pokud projekt již existuje. Při vytváření webového projektu zaměřeného na server WebSphere, pokud vyberete "Projekt Faces" nebo "Dynamický webový projekt s XDoclet" z rozbalovacího seznamu Konfigurace na první stránce průvodce projektem, webová fazeta WebSphere (koexistence) nebude automaticky vybrána. Můžete pokračovat na další stránku průvodce pro výběr této fazety. Pokud vyberete "<vlastní>" ze seznamu konfigurace, fazeta bude řádně vybrána při zaměření webové komponenty WebSphere.
Používáte-li
<hx:columnEx>
v<hx:dataTableEx>
a je povoleno vertikální posouvání (nastaveno scrollSize), pokud jeden nebo více sloupců tabulky má nastavenu šířku, aby byla založená na procentech, ve vykreslené tabulce se hlavičky sloupců a obsah sloupců spolu nemusí zarovnat, pokud je deklarace DOCTYPE stránky interpretována prohlížečem jako standardní W3C (oproti přechodnému W3C). K tomu například dojde, pokud DOCTYPE obsahuje deklaraciloose.dtd
.
Náhradní řešení: Upevněte šířky sloupců (ne založené na procentech) nebo se ujistěte, že deklarace DOCTYPE rozlišípřechodný
typ dokumentu (například odstraňte deklaraci loose.dtd).
Pokud je v
<hx:panelDialog>
umístění (horizontální nebo vertikální) nastaveno narelativní
a značka použitá jako základ pro umístění (značka, k níž je dialog relativně umístěn) je na stránce, která se posouvá tak, že značka je na obrazovce a stránka není posunutá na začátek, když se dialog zobrazí, může být nesprávně umístěn (obvykle příliš nahoře nebo příliš vlevo).Náhradní řešení: Pokud se vyžaduje relativní umístění, ujistěte se, že základní značka je v horní části stránky. Jinak použijte jeden z dalších typů umístění.
Pokud je tabulka dat (buď
<h:dataTable>
nebo<hx:dataTableEx>
) v panelu, který je aktivován pro AJAX a povolen pro výběr řádků (<hx:inputRowSelect>
je zahrnuto v tabulce), zaškrtávací pole ve sloupci pro výběr nebudou řádně fungovat, když se tabulka znovu zachytí přes AJAX. Budou řádně fungovat při prvním (pouze) vykreslení.Náhradní řešení: Pro tento problém momentálně neexistuje náhradní řešení. Neumisťujte tabulku do panelu povoleného pro AJAX.
<hx:ajaxExternalRequest>
nemusí fungovat správně v prohlížeči Internet Explorer (IE), pokud se zdrojový atribut použitý k uvedení ID panelu, které se načte na cílové stránce, liší od ID panelu, k němuž je<hx:ajaxExternalRequest>
připojen na zdrojové stránce. Například,<hx:panel id="panel1"><hx:ajaxExternalRequest source="panel999" /><hx:panel>
. Problém nastává pouze v IE a pouze tehdy, když je cílovým panelem mřížka, políčko nebo rozvržení (panel, který se vykreslí jako tabulka HTML).Náhradní řešení: Ujistěte se, že ID jsou stejné, nebo zabalte cílový panel ve skupině panelGroup.
Atribut
inProgresss
pro<hx:ajaxRefreshRequest>
,<hx:ajaxRefreshSubmit>
,<hx:ajaxExternalRequest>
a<hx:inputHelperTypeahead>
nefunguje. Nastavení hodnoty tohoto atributu nemá žádný efekt. Abyste zajistili kompatibilitu pro budoucí vydání, nenastavujte hodnotu.
Když je
<hx:inputHelperTypeahead>
připojen ke vstupnímu poli, pokud jsou v poli zadány znaky mezery a/nebo znaky interpunkce, jako je ampersand a procento, seznam návrhů, které se vytvoří, nebude obsahovat žádné "shody" obsahující tyto znaky. Například, pokud uživatel zadá %, žádné shody se nevrátí, i když existují slova v použitém "slovníku", která začínají na %.
Změna chování některých atributů HTML DOM počínaje verzí Firefox 1.5.0.8 může vyústit v to, že se
panelDialog
správně neumístí při vykreslení v prohlížeči Firefox. Problém se nejčastěji vyskytuje, když je dialog relativně umístěn, ale může nastat také v jiných případech, když je velikost obsahu těla "menší než" výška okna prohlížeče (což znamená, když se stránka vertikálně neposouvá).Náhradní řešení: Přidání obsahu do těla (i neviditelné znaky, jako je příznak <div> s nastavenou výškou), takže vertikální posuvník bude na stránce vždy spuštěn, může problém obejít (to záleží na přesných rozměrech okna prohlížeče a obsahu).
<hx:pagerDeluxe>
nevykresluje správně značkovací jazyk HTML, pokud je styleClass nastaven na něco jiného než na předvolenou třídupagerDeluxe
. Tlačítka pageru se vždy vykreslí s názvy tříd, které použijí předvolené názvy tříd.Náhradní řešení:
- Neměňte název třídy na nic jiného než pagerDeluxe.
- Přizpůsobte použitý styl CSS, aby bral v úvahu názvy tříd, které se vykreslí na tlačítka, pokud se použije jiný název třídy.