API айнымалы-анықтағыш түрі JSF 1.1 кейін қолданылмайды. Оның орнына el-resolver пайдаланыңыз

Біз жақында WebSphere Portal v6.1 нұсқасынан v7.0 нұсқасына дейін жаңарттық және қазір бізде JSF 1.2 бар. Rad 8-де жаңа Портлет жобасын жасау facim-config.xml-ды келесі жазбамен жасайды


    com.ibm.faces.application.DevelopmentStateManager
    com.ibm.faces.portlet.PortletVariableResolver

Содан кейін шағымданады: Type API-айнымалы-resolver JSF 1.1 кейін ескерілмейді. Оның орнына el-resolver пайдаланыңыз.

Өкінішке орай, el-resolver пайдаланатын IBM беттерінде жауап таба алмадым.

Өңдеу:

System.out.println("Resolver: " + PortalUtil.getFacesContext().getApplication().getELResolver());

=> Resolver: [email protected]

Бет-конфигурациясына жазбаны қосу

com.sun.faces.el.FacesCompositeELResolver

Айнымалы-ажыратқышты шығарумен немесе ажыратпастан:

java.lang.IllegalStateException: Application was not properly initialized at startup, could not find Factory: javax.faces.context.FacesContextFactory
    at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:270)
    at javax.faces.webapp.FacesServlet.init(FacesServlet.java:164)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:358)
    ... 89 more

IBM-мен PMR ашылды ...

6
қосылды автор Brad, көзі
RAD-ден ескерту хабары: Class javax.el.ELResolver бетон (дерексіз емес) болуы керек.
қосылды автор Stefan, көзі
Біз көктемді пайдаланады, орг.springframework.web.jsf.DelegatingVariableResolver бар. Бұл жақсы жұмыс істейді. Мүмкін, осы шешушіге тәуелділікті қосып көріңіз бе? Оны <�айнымалы-resolver> org.springframework.web.jsf.DelegatingVariableResolver
қосылды автор JMelnik, көзі

2 жауаптар

IBM компаниясының PMR-ге берген жауабы:

- ескертуді елемеудің қандай салдары болуы мүмкін?

Ans - Пайдаланушы айнымалы шешушіні әлі де пайдалана алады, бұл функцияға әсер етпейді. [Бұл тег кері қарай сыйысымдылық үшін сақталады]

Q - Неліктен жасалатын faces-config.xml әлі де ескірген әдісті пайдаланады?

Ans - Біз JSF 1.2-де жақсы жұмыс істейтін портлет айнымалы мәндерін шешу үшін айнымалы шешушіні пайдаланамыз

Q - Портлеттерге арналған el-resolver бар ма немесе бар ма?

Ans - Портлеттер үшін el-resolver болады. Ол WAS үшін жаңарту ретінде жіберілетін JSF портлет көпірінде 2.0 беріледі. Қазіргі уақытта жоспарлау сатысында тұр, осылайша сізде дәл табылған нұсқаны бере алмаймын.

1
қосылды

Мен мұны айтқым келеді, бірақ асинхронды веб-бағдарлама туралы айтатын болсақ, онда сіз суда өлесіз.

JSF 1.2 JSF компоненттерін асинхронды түрде көрсетуге кедергі келтіретін FaceletsRenderer класы болып табылатын «белгілі қате» (бұл сөздерді әрдайым жақсы көремін) (JSF-дегі барлық айқындылық жалған FacesContext , қызмет көрсету үшін пайдалануға болатын функционалды емес). Сіз JEE6-ге арналған JSF 2.1-ке сәйкес керек, әйтпесе оның түсініктемесінде көрсетілген @ D1e ретінде әртүрлі шешім қажет. Ұйымыңызға сәттілік тілейміз.

0
қосылды
Мен асинхронды веб-қосымшалардың сұраққа қатысты болуы мүмкін деп шатастырдым. Әсіресе, stacktrace құрамында FacesServlet.init бар болса, ол кез келген сұранысты өңдеуден бұрын орындалады.
қосылды автор A.H., көзі
Hm Facelets мүлдем пайдаланбайды.
қосылды автор Stefan, көзі