JSF 2.0/Tomcat/ Apache Orchestra @InitView parece ignorarse al acceder a Bean... La función Init no se está ejecutando

He estado tratando durante horas para resolver esto y no puedo entender cuál es el problema. Lo que quiero hacer es tomar una entrada de formulario y conservarla en una base de datos. He hecho esto un millón de veces exactamente de la misma manera, nunca tuve ningún problema.

Aquí está mi formulario (addPerson.xhtml)

<h:form>
                <div id="detail_metadata">

                         <p>
                            <h:outputText class="detail_subheaders" value="#{msgs.first_name}"  /><br></br>
                            <h:inputTextarea value="#{addPersonBean.person.firstName}" class="admin_textarea styled"/>
                        </p>

                        <p>
                            <h:outputText class="detail_subheaders" value="#{msgs.last_name}"  /><br></br>
                            <h:outputText class="detail_subheaders" value="#{addPersonBean.test}"  /><br></br>
                            <h:inputTextarea value="#{addPersonBean.person.lastName}" class="admin_textarea styled"/>
                        </p>

                        <p>

                            <h:outputLabel class="detail_subheaders" value="#{msgs.gender}"/><br/>

                            <h:selectOneRadio id="gender" required="true" value="#{addPersonBean.person.gender}"> 
                                <f:selectItem itemLabel="#{msgs.gender_m}" itemValue="m"/>
                                <f:selectItem itemLabel="#{msgs.gender_f}" itemValue="f"/>
                            </h:selectOneRadio>

                        </p>

                        <p>
                            <h:outputText class="detail_subheaders" value="#{msgs.links}"  /><br></br>
                            <h:inputTextarea value="#{addPersonBean.person.links}" class="admin_textarea styled"/>
                        </p>
                    .
                                    .
                                    .

Este es mi frijol:

import at.irian.jsfatwork.service.PersonService;
import at.irian.jsfatwork.domain.Role;
import at.irian.jsfatwork.gui.util.Utils;
import org.apache.myfaces.orchestra.conversation.Conversation;
import org.apache.myfaces.orchestra.conversation.annotations.ConversationRequire;
import org.apache.myfaces.orchestra.viewController.annotations.InitView;
import org.apache.myfaces.orchestra.viewController.annotations.ViewController;
import org.springframework.context.annotation.Scope;


import javax.inject.Inject;
import javax.inject.Named;

@Named("addPersonBean")
@Scope("manual")
@ViewController(viewIds = {"/addPerson.xhtml"})
@ConversationRequire(conversationNames = "addPersonBean", entryPointViewIds =   "/addPerson.xhtml",
    navigationAction = "addPerson.xhtml")
public class AddPersonBean extends PersonBeanBase {

@Inject
private PersonService personService;


@InitView
public void createPerson() {
    if (person == null) {
       person = personService.createNew();
   }
}

public String save() {
    personService.save(person);
    return ViewIds.SHOW_COLLECTION;

}

public String cancel() {
   //Conversation.getCurrentInstance().invalidate()
    return ViewIds.SHOW_COLLECTION;

}
}

Y el padre:

import at.irian.jsfatwork.domain.Person;
import javax.faces.model.SelectItem;
import java.util.List;

public abstract class PersonBeanBase {

protected Person person;
private List<SelectItem> collections;





public Person getPerson() {
    return this.person;
}

public void setPerson(Person person) {
    this.person=person;
}


public List<SelectItem> getCollections() {
    return this.collections;
}

}

Independientemente de lo que intente, @InitView se ignora directamente y cuando trato de persistir, la persona es nula ... ¿Cómo puede ser esto? Soy muy útil para obtener sugerencias, ya que simplemente no puedo ver dónde está el problema... El hecho de que esto funcione un millón de veces antes es simplemente frustrante. Déjame un comentario si necesitas algún código adicional. información ¡Muchas gracias!

Me acabo de dar cuenta de que recibo el siguiente error en la consola:

22.05.2012 17:52:42 org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage loadLibraries
SCHWERWIEGEND: Error Loading library: /WEB-INF/autorenhp_archive.taglib.xml
java.io.IOException: Error parsing [jndi:/localhost/autorenhp_archive-webapp/WEB-INF/autorenhp_archive.taglib.xml]: 
    at org.apache.myfaces.view.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java:637)
    at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.loadLibraries(FaceletViewDeclarationLanguage.java:2033)
    at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.createCompiler(FaceletViewDeclarationLanguage.java:1680)
    at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.initialize(FaceletViewDeclarationLanguage.java:1958)
    at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.<init>(FaceletViewDeclarationLanguage.java:281)
    at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguageStrategy.<init>(FaceletViewDeclarationLanguageStrategy.java:52)
    at org.apache.myfaces.view.ViewDeclarationLanguageFactoryImpl.initialize(ViewDeclarationLanguageFactoryImpl.java:106)
    at org.apache.myfaces.view.ViewDeclarationLanguageFactoryImpl.getViewDeclarationLanguage(ViewDeclarationLanguageFactoryImpl.java:79)
    at org.apache.myfaces.application.ViewHandlerImpl.getViewDeclarationLanguage(ViewHandlerImpl.java:175)
    at org.apache.myfaces.shared_impl.application.DefaultViewHandlerSupport.checkResourceExists(DefaultViewHandlerSupport.java:473)
    at org.apache.myfaces.shared_impl.application.DefaultViewHandlerSupport.handleSuffixMapping(DefaultViewHandlerSupport.java:402)
    at org.apache.myfaces.shared_impl.application.DefaultViewHandlerSupport.calculateViewId(DefaultViewHandlerSupport.java:76)
    at org.apache.myfaces.application.ViewHandlerImpl.deriveLogicalViewId(ViewHandlerImpl.java:114)
    at org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:151)
    at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:171)
    at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:189)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311)
    at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116)
    at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
    at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
    at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:101)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
    at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
    at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
    at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
    at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
    at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
    at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
    at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
    at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173)
    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:999)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:307)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)
Caused by: org.xml.sax.SAXException: Error Handling [jndi:/localhost/autorenhp_archive-webapp/WEB-INF/autorenhp_archive.taglib.xml@13,26] <function-class>
    at org.apache.myfaces.view.facelets.compiler.TagLibraryConfig$LibraryHandler.endElement(TagLibraryConfig.java:454)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:601)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1782)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2938)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
    at javax.xml.parsers.SAXParser.parse(SAXParser.java:395)
    at javax.xml.parsers.SAXParser.parse(SAXParser.java:198)
    at org.apache.myfaces.view.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java:632)
    ... 63 more

No tengo idea de donde viene esto...

preguntado el 22 de mayo de 12 a las 15:05

1 Respuestas

Parece que el SAXParser que lee archivos .taglib.xml encontró una excepción en /WEB-INF/autorenhp_archive.taglib.xml . Revisa ese archivo.

contestado el 22 de mayo de 12 a las 17:05

gracias por su comentario... perdón por haber tardado tanto en responder, no estuve en la oficina hasta hoy... ya revisé el archivo xml - es válido y nada cambió. Sin embargo, para estar seguro, lo eliminé de los parámetros de contexto, ya que no se usa en los archivos con los que tengo problemas de todos modos. La excepción SAxParser desapareció, sin embargo, sospecho que el problema proviene de Eclipse Indigo y JBoss Tools. No es la primera vez que este complemento arruina seriamente mi entorno... - user871784

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.