Maven + JBoss

0

Witam,
mam problem z uruchomieniem paczki na serwerze JBoss 5.0.0 i JBoss 4.0.3. Przy poniższym pliku pom.xml wszystko działa jak należy.

Plik pom.xml:

project xmlns="http://maven.apache.org/POM/4.0.0" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
	http://maven.apache.org/maven-v4_0_0.xsd"> 
 
  <modelVersion>4.0.0</modelVersion> 
  <groupId>com.mytutorial</groupId> 
  <artifactId>simpleWeb</artifactId> 
  <packaging>war</packaging> 
  <version>1.0-SNAPSHOT</version> 
  <name>simpleWeb Maven Webapp</name> 
  <a href="http://maven.apache.org">http://maven.apache.org</a> 
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency> 
      <groupId>javax.faces</groupId> 
      <artifactId>jsf-api</artifactId> 
      <version>1.2_02</version> 
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>servlet-api</artifactId>
      <version>2.4</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>2.5.6</version>
    </dependency>
    <dependency>
      <groupId>taglibs</groupId>
      <artifactId>standard</artifactId>
      <version>1.1.2</version>
    </dependency>
  </dependencies>
  <build> 
    <finalName>simpleWeb</finalName> 
    <pluginManagement> 
      <plugins> 
        <plugin> 
          <groupId>org.apache.maven.plugins</groupId> 
          <artifactId>maven-compiler-plugin</artifactId> 
          <version>2.0.2</version> 
          <configuration> 
            <source>1.5</source>
            <target>1.5</target> 
          </configuration> 
        </plugin> 
        <plugin> 
          <groupId>org.apache.maven.plugins</groupId> 
          <artifactId>maven-eclipse-plugin</artifactId> 
          <version>2.4</version> 
          <configuration> 
            <downloadSources>false</downloadSources> 
            <wtpversion>1.5</wtpversion> 
          </configuration> 
        </plugin> 
      </plugins> 
    </pluginManagement> 
  </build> 
</project>

Po dodaniu takiej zależności:

   <dependency>
      <groupId>javax.el</groupId>
      <artifactId>el-api</artifactId>
      <version>1.0</version>
    </dependency> 

Serwer wyrzuca błędy:

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: java.lang.LinkageError: loader constraints violated when linking javax/el/ExpressionFactory class
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:257)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

root cause

java.lang.LinkageError: loader constraints violated when linking javax/el/ExpressionFactory class
	org.apache.jsp.index_jsp._jspInit(index_jsp.java:22)
	org.apache.jasper.runtime.HttpJspBase.init(HttpJspBase.java:52)
	org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:154)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

Natomiast przy próbie dodania:

<dependency> 
  <groupId>javax.faces</groupId> 
  <artifactId>jsf-impl</artifactId> 
  <version>1.2-b19</version> 
 </dependency>

Serwer sprawia wrażenie jakby nie widział paczki.

message /simpleWeb/

description The requested resource (/simpleWeb/) is not available.

Czy ktoś spotkał się może z podobnym problemem?

0

Serwer widzi paczkę.... w kilku kopiach. Dodaj

<warSourceExcludes>WEB-INF/lib/nazawajara</warSourceExcludes>

Zamiast nazwajara wstaw nazwę biblioteki do wyłączenia.

0

Dodałem następujący plugin do pom.xml:

<plugin>
  <artifactId>maven-war-plugin</artifactId>
  <version>2.0.2</version>
  <configuration>
    <dependentWarExcludes>
      **/jdbc.properties,**/hibernate.cfg.xml,**/sql-map-config.xml,**/web.xml,WEB-INF/classes/META-INF/**
    </dependentWarExcludes>
    <warSourceExcludes>WEB-INF/lib/jsf-api-1.2_02.jar</warSourceExcludes>
    <warSourceExcludes>WEB-INF/lib/jsf-impl-1.2-b19.jar</warSourceExcludes>
  </configuration>
</plugin>

I wszystko działa.

Dokończyłem do końca tutorial (part3): http://www.lulu.com/items/volume_62/1080000/1080910/2/print/Java-Maven-Eclipse-JSF-Tutorial.pdf

I zrobioną paczkę przesyłam na serwer, ale niestety wywala błędy:

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: An exception occurred processing JSP page /index.jsp at line 3

1: <html> 
2:     <body>
3:          <jsp:forward page="/pages/inputname.jsf" /> 
4:     </body> 
5: </html>


Stacktrace:
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:498)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

root cause

javax.servlet.ServletException: Servlet.init() for servlet Faces Servlet threw exception
	org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:696)
	org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:667)
	org.apache.jsp.index_jsp._jspService(index_jsp.java:57)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

root cause

java.lang.IllegalStateException: Application was not properly initialized at startup, could not find Factory: javax.faces.context.FacesContextFactory
	javax.faces.FactoryFinder.getFactory(FactoryFinder.java:263)
	javax.faces.webapp.FacesServlet.init(FacesServlet.java:142)
	org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:696)
	org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:667)
	org.apache.jsp.index_jsp._jspService(index_jsp.java:57)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

Niestety nie wiem z czym te błędy powiązać...

Po dodaniu do pom.xml:

<dependency> 
  <groupId>commons-digester</groupId> 
  <artifactId>commons-digester</artifactId> 
  <version>1.8</version> 
 </dependency> 
 
 <dependency> 
  <groupId>commons-collections</groupId> 
  <artifactId>commons-collections</artifactId> 
  <version>3.2</version> 
 </dependency>
 

błędy nada się pojawiają:

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: javax.servlet.ServletException: Servlet.init() for servlet Faces Servlet threw exception
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:515)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

root cause

javax.servlet.ServletException: Servlet.init() for servlet Faces Servlet threw exception
	org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:696)
	org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:667)
	org.apache.jsp.index_jsp._jspService(index_jsp.java:57)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

root cause

java.lang.IllegalStateException: Application was not properly initialized at startup, could not find Factory: javax.faces.context.FacesContextFactory
	javax.faces.FactoryFinder.getFactory(FactoryFinder.java:263)
	javax.faces.webapp.FacesServlet.init(FacesServlet.java:142)
	org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:696)
	org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:667)
	org.apache.jsp.index_jsp._jspService(index_jsp.java:57)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

1 użytkowników online, w tym zalogowanych: 0, gości: 1