| Author |
Message |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 04/01/2007 01:29:44
|
Gabcia
Joined: 22/11/2006 00:00:00
Messages: 16
Offline
|
Hi all,
I posted question to Seam forum but it looks they can't tell me...:/
I have problem with integration Seam and Ice Faces. Like in booking example in seam i created new app project and following configuration can't load libraries, question is why?
Here is my problem:
Code:
23:06:00,708 WARN [ServiceController] Problem creating service jboss.j2ee:service=EJB3,module=exper
tEJB.jar
java.lang.NoClassDefFoundError: com/icesoft/faces/component/paneltabset/TabChangeListener
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
and
Code:
23:06:10,793 ERROR [URLDeploymentScanner] Incomplete Deployment listing:
--- MBeans waiting for other MBeans ---
ObjectName: jboss.j2ee:service=EJB3,module=expertEJB.jar
State: FAILED
Reason: java.lang.NoClassDefFoundError: com/icesoft/faces/component/paneltabset/TabChangeListener
--- MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM ---
ObjectName: jboss.j2ee:service=EJB3,module=expertEJB.jar
State: FAILED
Reason: java.lang.NoClassDefFoundError: com/icesoft/faces/component/paneltabset/TabChangeListener
application.xml nad (el files are included
Code:
<module>
<ejb>expertEJB.jar</ejb>
</module>
<module>
<java>jboss-seam.jar</java>
</module>
<module>
<java>el-api.jar</java>
</module>
<module>
<java>el-ri.jar</java>
</module>
also in war file/WEB-INF/lib/ have following libs
Code:
commons-fileupload.jar
icefaces.jar
icefaces-comps.jar
icefaces-facelets.jar
jboss-seam-debug.jar
jboss-seam-ui.jar
oscache-2.3.2.jar
finally I setted true in
\server\default\deploy\jbossweb-tomcat55.sar\META-INF
jboss-service.xml
seam booking example working fine, but my new project created based on booking can't load libs, why?
Can anyone help me?
my web.xml
Code:
<listener> <listener-class>org.jboss.seam.servlet.SeamListener</listener-class>
</listener>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/navigation.xml</param-value>
</context-param>
<context-param> <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>client</param-value>
</context-param>
<context-param>
<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
<param-value>.xhtml</param-value>
</context-param>
<context-param>
<param-name>facelets.DEVELOPMENT</param-name>
<param-value>true</param-value>
</context-param>
<context-param> <param-name>com.icesoft.faces.doJSFStateManagement</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>com.icesoft.faces.actionURLSuffix</param-name>
<param-value>.seam</param-value>
</context-param>
<context-param> <param-name>com.icesoft.faces.synchronousUpdate</param-name>
<param-value>true</param-value>
</context-param>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>Blocking Servlet</servlet-name>
<servlet-class>com.icesoft.faces.webapp.xmlhttp.BlockingServlet</servlet-class>
<load-on-startup> 1 </load-on-startup>
</servlet>
<servlet>
<servlet-name>Persistent Faces Servlet</servlet-name>
<servlet-class>com.icesoft.faces.webapp.xmlhttp.PersistentFacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Persistent Faces Servlet</servlet-name>
<url-pattern>/xmlhttp/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Persistent Faces Servlet</servlet-name>
<url-pattern>*.iface</url-pattern>
</servlet-mapping>
<!-- Blocking Servlet Mapping -->
<servlet-mapping>
<servlet-name>Blocking Servlet</servlet-name>
<url-pattern>/block/*</url-pattern>
</servlet-mapping>
<!-- Faces Servlet Mapping -->
<servlet-mapping>
<servlet-name>Persistent Faces Servlet</servlet-name>
<url-pattern>*.seam</url-pattern>
</servlet-mapping>
<!-- MyFaces -->
<listener> <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
</listener>
<session-config>
<session-timeout>30</session-timeout>
</session-config>
|
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 04/01/2007 08:06:59
|
buddy1974
Joined: 29/12/2006 00:00:00
Messages: 10
Offline
|
Hi,
it seems as if you need to access the icefaces components inside your beans. In this case you have to modify your application.xml to llok like...
Code:
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_5.xsd"
version="5">
<display-name>Seam Generated Application</display-name>
<module>
<web>
<web-uri>app.war</web-uri>
<context-root>/app</context-root>
</web>
</module>
<module>
<java>jboss-seam.jar</java>
</module>
<module>
<ejb>app.jar</ejb>
</module>
<module>
<java>jbpm-3.1.2.jar</java>
</module>
<module>
<java>el-api.jar</java>
</module>
<module>
<java>el-ri.jar</java>
</module>
<module>
<java>icefaces-facelets.jar</java>
</module>
<module>
<java>icefaces.jar</java>
</module>
<module>
<java>icefaces-comps.jar</java>
</module>
<module>
<java>commons-fileupload.jar</java>
</module>
</application>
then move the icefaces libs inside your lib folder inside your project and modify your build.xml around line 112 (target ear) and modify it to look like...
Code:
<target name="ear" description="Build the EAR">
<copy todir="${ear.dir}">
<fileset dir="${basedir}/resources">
<include name="*jpdl.xml" />
<include name="hibernate.cfg.xml" />
<include name="jbpm.cfg.xml" />
</fileset>
<fileset dir="${lib.dir}">
<include name="jboss-seam.jar" />
<include name="jbpm*.jar" />
<include name="el-*.jar" />
<include name="icefaces*.jar" />
<include name="commons-fileupload.jar" />
</fileset>
</copy>
<copy todir="${ear.dir}/META-INF">
<fileset dir="${basedir}/resources/META-INF">
<include name="application.xml" />
<include name="jboss-app.xml" />
</fileset>
</copy>
</target>
Kind regards
Juergen
|
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 04/01/2007 10:19:17
|
gus315
Joined: 14/11/2006 00:00:00
Messages: 158
Offline
|
You need to go into Code:
jboss-4.0.5.GA\server\default\deploy\jbossweb-tomcat55.sar\META-INF\jboss-service.xml
and change the following line:Code:
<attribute name="UseJBossWebLoader">false</attribute>
to: Code:
<attribute name="UseJBossWebLoader">true</attribute>
This problem was discussed in Seam forum.
|
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 04/01/2007 11:42:27
|
buddy1974
Joined: 29/12/2006 00:00:00
Messages: 10
Offline
|
Hi san_gu,
i Think he already did this:
finally I setted true in
\server\default\deploy\jbossweb-tomcat55.sar\META-INF
jboss-service.xml
Kind regards
Juergen
|
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 26/02/2007 10:44:14
|
gector
Joined: 15/12/2006 00:00:00
Messages: 27
Offline
|
I have the same problem. Has anyone solved this problem?
I've tried many variations of moving icefaces jars as well as myfaces jars
around in my project and in jboss.
Any ideas? Or does this need to be added to the JIRA?
JR
|
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 26/02/2007 11:16:53
|
philip.breau

Joined: 08/05/2006 00:00:00
Messages: 2672
Offline
|
Hi JR,
Have you added the icefaces jars to the application.xml file?
Philip
|
. |
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 26/02/2007 12:17:23
|
gector
Joined: 15/12/2006 00:00:00
Messages: 27
Offline
|
Hi Philip,
Yes, I have added the icefaces jars:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.4"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd">
<display-name>CPPMS</display-name>
<module>
<web>
<web-uri>cppms.war</web-uri>
<context-root>/cppms</context-root>
</web>
</module>
<module>
<ejb>cppms.jar</ejb>
</module>
<module>
<java>jboss-seam.jar</java>
</module>
<module>
<java>util.jar</java>
</module>
<module>
<java>el-api.jar</java>
</module>
<module>
<java>el-ri.jar</java>
</module>
<module>
<java>icefaces-facelets.jar</java>
</module>
<module>
<java>icefaces.jar</java>
</module>
<module>
<java>icefaces-comps.jar</java>
</module>
<module>
<java>dfc.jar</java>
</module>
<module>
<java>dfcbase.jar</java>
</module>
</application>
And I get this error when trying to load my login page:
Code:
13:15:57,718 ERROR [JspPageToDocument] Can't find TLD for location [http://www.icesoft.com/icefaces/component]. JAR cont
aining the TLD may not be in the classpath
Noting special about this page, here it is:
Code:
<f:view xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ice="http://www.icesoft.com/icefaces/component"
xmlns:s="http://jboss.com/products/seam/taglib">
<ice:outputDeclaration doctypeRoot="HTML"
doctypePublic="-//W3C//DTD HTML 4.01 Transitional//EN"
doctypeSystem="http://www.w3.org/TR/html4/loose.dtd"/>
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1"></meta>
<title>CPPMS</title>
<link href="./xmlhttp/css/xp/xp.css" rel="stylesheet"
type="text/css"/>
</head>
<body>
<h2>CPPMS Login Page</h2>
<ice:form>
<f:loadBundle basename="gov.dot.marad.web.MessageBundle" var="bundle"/>
<s:validateAll>
<ice:outputLabel for="username" > <ice:outputText value="#{bundle.user_name_label}"> </ice:outputText> </ice:outputLabel>
<ice:inputText id="username" required="true" autocomplete="true" value="#{users.username}"></ice:inputText>
<br/>
<ice:outputLabel for="password" ><ice:outputText value="#{bundle.user_password_label}"></ice:outputText></ice:outputLabel>
<ice:inputSecret id="password" autocomplete="true" redisplay="false" required="true" value="#{users.password}"></ice:inputSecret>
</s:validateAll>
<ice:messages showDetail="true"/>
<br/>
<ice:commandButton id="submit" action="#{login.login}" value="#{bundle.login_button_label}"></ice:commandButton>
</ice:form>
</body>
</html>
</f:view>
I'm using the latest production icefaces and seam.
Is there a way to fix this?
JR
|
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 26/02/2007 13:33:18
|
philip.breau

Joined: 08/05/2006 00:00:00
Messages: 2672
Offline
|
Try extracting the tld files from the icefaces-comps.jar and sticking them in your war file's WEB-INF directory.
|
. |
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 26/02/2007 15:04:01
|
gector
Joined: 15/12/2006 00:00:00
Messages: 27
Offline
|
That worked. Thanks!
|
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 01/03/2007 12:30:57
|
ted.goddard
Joined: 26/10/2004 00:00:00
Messages: 684
Offline
|
I have verified this workaround with a test application. UseJBossWebLoader is a server-specific, global change to classloading. Any feedback on whether applying this setting is acceptable long-term?
|
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 02/03/2007 11:22:41
|
ted.goddard
Joined: 26/10/2004 00:00:00
Messages: 684
Offline
|
"UseJBossWebLoader" is not necessary, provided that the ICEfaces jars are not included in the WEB-INF/lib of the web application.
|
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 02/03/2007 12:58:08
|
gector
Joined: 15/12/2006 00:00:00
Messages: 27
Offline
|
If you are using Seam, you may also need to move the jboss-seam-ui and jboss-seam-debug jars, which means you have to extract the taglib.tld, which causes this unpleasant side effect in eclipse:
Code:
Invalid content was found starting with element 'description'. One of '{"http://java.sun.com/xml/ns/j2ee":type}' is expected.
|
|
|
 |
|
|