Announcement Announcement Module
Collapse
No announcement yet.
dmServer 2.0 and war deployment Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • dmServer 2.0 and war deployment

    Hi to everyone,

    I'm using dm server 2.0.0.RELEASE and I've a problem with deployment of a war web bundle using Icefaces implementation for JSF.
    When I deploy war archive I obtained this error:
    Code:
    [2010-02-04 10:15:06.128] start-signalling-2           org.springframework.web.context.ContextLoader                     Context initialization failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name '_filterChainProxy': Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '_filterChainList': Cannot resolve reference to bean '_rememberMeFilter' while setting bean property 'filters' with key [6]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '_rememberMeFilter': Cannot resolve reference to bean '_rememberMeServices' while setting bean property 'rememberMeServices'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name '_rememberMeServices': Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userDetailsService' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Cannot resolve reference to bean 'dataSource' while setting bean property 'dataSource'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource': Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Required 'bundleContext' property was not set.
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
    	at ........
    It seems that don't create bean defined in my applicationContext.xml but this file is correct because it works with spring dm server 1.0.2.

    This is my Web.xml:

    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
    	<display-name>IBIS Platform</display-name>
    	<context-param>
    		<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    		<param-value>server</param-value>
    		<description>
    			State saving method: "client" or "server" (= default)
    			See
    			JSF Specification 2.5.2
            </description>
    	</context-param>
    	<!-- Facelet Config  -->
    	<!--
    		<context-param> <param-name>javax.faces.CONFIG_FILES</param-name>
    		<param-value> /WEB-INF/faces-config-application-beans.xml,
    		/WEB-INF/faces-config-example-beans.xml,
    		/WEB-INF/faces-config-navigation.xml </param-value> </context-param>
    	-->
    	<context-param>
    		<param-name>com.sun.faces.verifyObjects</param-name>
    		<param-value>false</param-value>
    	</context-param>
    	<context-param>
    		<param-name>facelets.DEVELOPMENT</param-name>
    		<param-value>true</param-value>
    	</context-param>
    	<context-param>
    		<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
    		<param-value>.jspx</param-value>
    	</context-param>
    	<context-param>
    		<param-name>com.icesoft.faces.debugDOMUpdate</param-name>
    		<param-value>false</param-value>
    	</context-param>
    	<context-param>
    		<param-name>com.icesoft.faces.standardRequestScope</param-name>
    		<param-value>false</param-value>
    	</context-param>
    	<context-param>
    		<param-name>com.icesoft.faces.uploadMaxFileSize</param-name>
    		<param-value>102400</param-value>
    	</context-param>
    	<!--
    		Specifies to the ICEfaces framework whether to support multiple views
    		of a single application from the same browser. When running in a
    		Portlet environment, this parameter must be set to true.
    	-->
    	<context-param>
    		<param-name>com.icesoft.faces.concurrentDOMViews</param-name>
    		<param-value>false</param-value>
    	</context-param>
    	<!--
    		Specifies to the ICEfaces framework that synchronous update mode is to
    		be used. By default, ICEfaces uses asynchronous update mode to support
    		server-initiated updates (AJAX push). Setting to true will enable
    		synchronous update mode and disable AJAX push features.
    	-->
    	<context-param>
    		<param-name>com.icesoft.faces.synchronousUpdate</param-name>
    		<param-value>true</param-value>
    	</context-param>
    	<!--
    		Specifies the amount of time in milliseconds that the bridge will wait
    		for a response from the server for a user-initiated request before
    		declaring the connection lost. Un-comment and change the default
    		value, if necessary.
    	-->
    	<context-param>
    		<param-name>com.icesoft.faces.connectionTimeout</param-name>
    		<param-value>60000</param-value>
    	</context-param>
    	<!--
    		Specifies the amount of time in milliseconds that an idle asynchronous
    		blocking connection should be held open before being released.
    		Normally, the blocking connection is closed and re-opened with every
    		communication to the browser, such as user interaction or a heartbeat
    		ping. The purpose of this setting is to remove the possibility of
    		threads being held blocked for a long duration on a dead or completely
    		inactive client connection. This value should be longer than the
    		heartbeat interval to avoid unnecessary network traffic. Un-comment
    		and change the default value, if necessary.
    	-->
    	<context-param>
    		<param-name>com.icesoft.faces.blockingConnectionTimeout</param-name>
    		<param-value>300000</param-value>
    	</context-param>
    	<!--
    		Specifies the amount of time in milliseconds between heartbeat
    		messages. Un-comment and change the default value, if necessary.
    	-->
    	<context-param>
    		<param-name>com.icesoft.faces.heartbeatInterval</param-name>
    		<param-value>300000</param-value>
    	</context-param>
    	<!--
    		Specifies how many consecutive heartbeat connection attempts may fail
    		before the connection is considered lost. Un-comment and change the
    		default value, if necessary.
    	-->
    	<context-param>
    		<param-name>com.icesoft.faces.heartbeatRetries</param-name>
    		<param-value>3</param-value>
    	</context-param>
    	<!--
    		Specifies the number of milliseconds that a heartbeat request waits
    		for a successful response before it is considered timed out.
    		Un-comment and change the default value, if necessary.
    	-->
    	<context-param>
    		<param-name>com.icesoft.faces.heartbeatTimeout</param-name>
    		<param-value>15000</param-value>
    	</context-param>
    	<!--
    		Specifies a page URI to redirect the client to when an asynchronous
    		connection is lost. The parameter value must be surrounded by single
    		quotes. Un-comment and change the default value, if necessary.
    		<context-param>
    		<param-name>com.icesoft.faces.connectionLostRedirectURI</param-name>
    		<param-value></param-value> </context-param>
    	-->
    	<!-- Spring configuration file -->
    	<!--
    		<context-param> <param-name>contextConfigLocation</param-name>
    		<param-value>WEB-INF/spring/WebGui.xml</param-value> </context-param>
    	-->
    	<!-- Spring Security -->
    	<!--
    		ConfigureListener is not generally required. Due to an apparent bug in
    		Tomcat users have reported seeing the following error "SEVERE:
    		ICEfaces could not initialize JavaServer Faces. Please check that the
    		JSF .jar files are installed correctly.". Specifying the
    		ConfigureListener resolves the issue. <listener>
    		<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
    		</listener>
    	-->
    	<!--<listener>
    		<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
    	</listener>
    	-->
    	<listener>
    		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    	</listener>
    	<listener>
    		<listener-class>com.icesoft.faces.util.event.servlet.ContextEventRepeater</listener-class>
    	</listener>
    	<!-- file upload Servlet -->
    	<servlet>
    		<servlet-name>uploadServlet</servlet-name>
    		<servlet-class>com.icesoft.faces.component.inputfile.FileUploadServlet</servlet-class>
    		<load-on-startup> 1 </load-on-startup>
    	</servlet>
    	<!-- Faces Servlet -->
    	<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>Persistent Faces Servlet</servlet-name>
    		<servlet-class>com.icesoft.faces.webapp.xmlhttp.PersistentFacesServlet</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>
    	<!-- extension mapping -->
    	<servlet-mapping>
    		<servlet-name>uploadServlet</servlet-name>
    		<url-pattern>/uploadHtml</url-pattern>
    	</servlet-mapping>
    	<servlet-mapping>
    		<servlet-name>Persistent Faces Servlet</servlet-name>
    		<url-pattern>*.iface</url-pattern>
    	</servlet-mapping>
    	<servlet-mapping>
    		<servlet-name>Persistent Faces Servlet</servlet-name>
    		<url-pattern>/xmlhttp/*</url-pattern>
    	</servlet-mapping>
    	<servlet-mapping>
    		<servlet-name>Blocking Servlet</servlet-name>
    		<url-pattern>/block/*</url-pattern>
    	</servlet-mapping>
    	<session-config>
    		<session-timeout>30</session-timeout>
    	</session-config>
    	<filter>
    		<filter-name>springSecurityFilterChain</filter-name>
    		<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
    	</filter>
    	<filter-mapping>
    		<filter-name>springSecurityFilterChain</filter-name>
    		<url-pattern>/*</url-pattern>
    	</filter-mapping>
    	<!-- Welcome files -->
    	<welcome-file-list>
    		<welcome-file>index.jsp</welcome-file>
    		<welcome-file>index.html</welcome-file>
    		<welcome-file>index.jspx</welcome-file>
    	</welcome-file-list>
    </web-app>
    I don't found how to resolve this error..

    Bye bye
    Federico

  • #2
    You need to add additional context param to tell spring to use osgi aware application context:

    Code:
        <context-param>
            <param-name>contextClass</param-name>
            <param-value>com.springsource.server.web.dm.ServerOsgiBundleXmlWebApplicationContext</param-value>
        </context-param>
    Don't forget to import com.springsource.server.web.dm package in your manifest.

    Comment

    Working...
    X