start() {
cp $CONF_DIR/config.ini $CONF_RW/config.ini
touch $SHUTDOWN_FILE
- cd $EXEC_DIR && $JVM \
+ cd $EXEC_DIR
+ $JVM \
-Dosgi.bundles="org.argeo.osgi.boot.jar@start" \
-Dargeo.osgi.bundles="$CONF_DIR/modules;in=*,$LIB_DIR;in=*" \
+ -Dargeo.osgi.shutdownFile="$SHUTDOWN_FILE" \
-Dlog4j.configuration="file:$CONF_DIR/log4j.properties" \
$JAVA_OPTS -jar $OSGI_FRAMEWORK \
+ -clean \
-configuration "$CONF_RW" \
-data "$DATA_DIR" \
- &> $LOG_FILE &
+ &>> $LOG_FILE &
PID=$!
echo $PID > $PID_FILE
echo Started $APP with pid $PID
}
stop() {
- PID=`cat $PID_FILE`
+ if [ -f $PID_FILE ];then
+ PID=`cat $PID_FILE`
+ else
+ return $RETVAL
+ fi
rm -f $SHUTDOWN_FILE
- # TODO wait for process to finish until timeout, then kill
+ timeout 5m sh << EOF
+while kill -0 $PID &> /dev/null; do sleep 1; done
+EOF
+ TIMEOUT_EXIT=$?
+ if [ $TIMEOUT_EXIT -eq 124 ];then
+ kill -9 $PID
+ fi
+ rm -f $PID_FILE
echo Stopped $APP with pid $PID
return $RETVAL
}
stop)
stop
;;
- restart|reload)
+ restart)
stop
- sleep 10
start
RETVAL=$?
;;
- condrestart)
- echo Not implemented
- exit 1
- ;;
status)
- echo Not implemented
- exit 1
+ if [ -f $PID_FILE ];then
+ PID=`cat $PID_FILE`
+ echo $APP is running with pid $PID ...
+ else
+ echo $APP is not running
+ fi
;;
*)
- echo $"Usage: $0 {start|stop|restart}"
+ echo $"Usage: $0 {start|stop|restart|status}"
exit 1
-esac
+esac
\ No newline at end of file
<version>${version.argeo-commons}</version>
</dependency>
+ <!-- Javax -->
+ <dependency>
+ <groupId>javax.annotation</groupId>
+ <artifactId>com.springsource.javax.annotation</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>javax.xml.ws</groupId>
+ <artifactId>com.springsource.javax.xml.ws</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>com.springsource.javax.xml.bind</artifactId>
+ </dependency>
+
+ <!-- Security -->
+ <dependency>
+ <groupId>org.argeo.commons.security</groupId>
+ <artifactId>org.argeo.security.dao.ldap</artifactId>
+ <version>${version.argeo-commons}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.argeo.commons.security</groupId>
+ <artifactId>org.argeo.security.ldap</artifactId>
+ <version>0.3.4-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.argeo.commons.security</groupId>
+ <artifactId>org.argeo.security.services</artifactId>
+ <version>${version.argeo-commons}</version>
+ </dependency>
+
+ <!-- Web -->
+ <dependency>
+ <groupId>org.springframework.osgi</groupId>
+ <artifactId>org.springframework.osgi.web.extender</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.osgi</groupId>
+ <artifactId>org.springframework.osgi.web</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.argeo.commons.server</groupId>
+ <artifactId>org.argeo.server.dep.tomcat</artifactId>
+ <version>0.3.4-SNAPSHOT</version>
+ <type>pom</type>
+ </dependency>
+ <dependency>
+ <groupId>org.argeo.commons.server</groupId>
+ <artifactId>org.argeo.server.webextender</artifactId>
+ <version>0.3.4-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.argeo.commons.server</groupId>
+ <artifactId>org.argeo.server.jcr.mvc</artifactId>
+ <version>0.3.4-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.argeo.commons.server</groupId>
+ <artifactId>org.argeo.jackrabbit.webapp</artifactId>
+ <version>${version.argeo-commons}</version>
+ </dependency>
+
<!-- Hibernate -->
<dependency>
<groupId>org.argeo.commons.server</groupId>
<version>0.3.4-SNAPSHOT</version>
</dependency>
- <!-- Javax -->
- <dependency>
- <groupId>javax.annotation</groupId>
- <artifactId>com.springsource.javax.annotation</artifactId>
- </dependency>
- <dependency>
- <groupId>javax.xml.ws</groupId>
- <artifactId>com.springsource.javax.xml.ws</artifactId>
- </dependency>
- <dependency>
- <groupId>javax.xml.bind</groupId>
- <artifactId>com.springsource.javax.xml.bind</artifactId>
- </dependency>
-
- <!-- Security -->
- <dependency>
- <groupId>org.argeo.commons.security</groupId>
- <artifactId>org.argeo.security.dao.ldap</artifactId>
- <version>${version.argeo-commons}</version>
- </dependency>
- <dependency>
- <groupId>org.argeo.commons.security</groupId>
- <artifactId>org.argeo.security.ldap</artifactId>
- <version>0.3.4-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>org.argeo.commons.security</groupId>
- <artifactId>org.argeo.security.services</artifactId>
- <version>${version.argeo-commons}</version>
- </dependency>
-
- <!-- Web -->
- <dependency>
- <groupId>org.springframework.osgi</groupId>
- <artifactId>org.springframework.osgi.web.extender</artifactId>
- </dependency>
- <dependency>
- <groupId>org.springframework.osgi</groupId>
- <artifactId>org.springframework.osgi.web</artifactId>
- </dependency>
- <dependency>
- <groupId>org.argeo.commons.server</groupId>
- <artifactId>org.argeo.server.dep.tomcat</artifactId>
- <version>0.3.4-SNAPSHOT</version>
- <type>pom</type>
- </dependency>
- <dependency>
- <groupId>org.argeo.commons.server</groupId>
- <artifactId>org.argeo.server.webextender</artifactId>
- <version>0.3.4-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>org.argeo.commons.server</groupId>
- <artifactId>org.argeo.server.jcr.mvc</artifactId>
- <version>0.3.4-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>org.argeo.commons.server</groupId>
- <artifactId>org.argeo.jackrabbit.webapp</artifactId>
- <version>${version.argeo-commons}</version>
- </dependency>
-
<!-- For Tomcat deployment -->
<dependency>
<groupId>org.argeo.commons.server</groupId>
<bean id="sessionProvider" scope="session" init-method="init"
destroy-method="dispose" class="org.argeo.jackrabbit.remote.SimpleSessionProvider">
<aop:scoped-proxy proxy-target-class="false" />
- <!-- <property name="credentials"> -->
- <!-- <bean class="javax.jcr.SimpleCredentials"> -->
- <!-- <constructor-arg value="root" /> -->
- <!-- <constructor-arg value="demo" /> -->
- <!-- </bean> -->
- <!-- </property> -->
</bean>
- <bean id="osivInterceptor" class="org.argeo.jcr.mvc.OpenSessionInViewJcrInterceptor">
- <!-- <property name="session" ref="jcrSession" /> -->
- </bean>
+<!-- <bean id="osivInterceptor" class="org.argeo.jcr.mvc.OpenSessionInViewJcrInterceptor"> -->
+<!-- <property name="session" ref="jcrSession" /> -->
+<!-- </bean> -->
</beans>
\ No newline at end of file
<url-pattern>/remoting/*</url-pattern>
</servlet-mapping>
- <!-- XML remoting -->
+ <!-- XML remoting
<servlet>
<servlet-name>xmlremoting</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<servlet-name>xmlremoting</servlet-name>
<url-pattern>*.jcr</url-pattern>
</servlet-mapping>
-
+ -->
+
<!-- WEBDAV servlet -->
<servlet>
<servlet-name>webdav</servlet-name>
<url-pattern>/public/webdav/*</url-pattern>
</servlet-mapping>
- <!-- JCR-MANAGER servlet -->
+ <!-- JCR-MANAGER servlet
<servlet>
<servlet-name>jcr-manager</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<servlet-name>jcr-manager</servlet-name>
<url-pattern>/jcr-manager/*</url-pattern>
</servlet-mapping>
-
+ -->
<!-- Security -->
<filter>
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">
- <context:component-scan base-package="org.argeo.jcr.mvc" />
-
- <bean name="/*.jcr" class="org.argeo.jcr.mvc.JcrBrowserController" />
-
- <!-- Views -->
- <bean name="getJcrItem" class="org.argeo.server.mvc.SerializingView">
- <property name="serializer">
- <bean class="org.argeo.jcr.mvc.JcrXmlServerSerializer" />
- </property>
- </bean>
-
- <bean name="queryJcrNodes" class="org.argeo.server.mvc.SerializingView">
- <property name="serializer" ref="jsonSerializer" />
- </bean>
-
- <bean name="queryJcrTable" class="org.argeo.server.mvc.SerializingView">
- <property name="serializer" ref="jsonSerializer" />
- </bean>
-
- <bean name="500" class="org.argeo.server.mvc.SerializingView">
- <property name="serializer" ref="jsonSerializer" />
- </bean>
-
- <!-- Serializers -->
- <bean id="jsonSerializer" class="org.argeo.server.json.JsonServerSerializer" />
-
- <!-- MVC -->
- <bean id="handlerMapping"
- class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping">
- <property name="interceptors">
- <list>
- <ref bean="osivInterceptor" />
- </list>
- </property>
- </bean>
-
- <bean id="viewResolver"
- class="org.springframework.web.servlet.view.BeanNameViewResolver" />
-
- <bean class="org.argeo.server.mvc.DefaultHandlerExceptionResolver" />
+<!-- <context:component-scan base-package="org.argeo.jcr.mvc" /> -->
+
+<!-- <bean name="/*.jcr" class="org.argeo.jcr.mvc.JcrBrowserController" /> -->
+
+<!-- Views -->
+<!-- <bean name="getJcrItem" class="org.argeo.server.mvc.SerializingView"> -->
+<!-- <property name="serializer"> -->
+<!-- <bean class="org.argeo.jcr.mvc.JcrXmlServerSerializer" /> -->
+<!-- </property> -->
+<!-- </bean> -->
+
+<!-- <bean name="queryJcrNodes" class="org.argeo.server.mvc.SerializingView"> -->
+<!-- <property name="serializer" ref="jsonSerializer" /> -->
+<!-- </bean> -->
+
+<!-- <bean name="queryJcrTable" class="org.argeo.server.mvc.SerializingView"> -->
+<!-- <property name="serializer" ref="jsonSerializer" /> -->
+<!-- </bean> -->
+
+<!-- <bean name="500" class="org.argeo.server.mvc.SerializingView"> -->
+<!-- <property name="serializer" ref="jsonSerializer" /> -->
+<!-- </bean> -->
+
+<!-- Serializers -->
+<!-- <bean id="jsonSerializer" class="org.argeo.server.json.JsonServerSerializer" /> -->
+
+<!-- MVC -->
+<!-- <bean id="handlerMapping" -->
+<!-- class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"> -->
+<!-- <property name="interceptors"> -->
+<!-- <list> -->
+<!-- <ref bean="osivInterceptor" /> -->
+<!-- </list> -->
+<!-- </property> -->
+<!-- </bean> -->
+
+<!-- <bean id="viewResolver" -->
+<!-- class="org.springframework.web.servlet.view.BeanNameViewResolver" /> -->
+
+<!-- <bean class="org.argeo.server.mvc.DefaultHandlerExceptionResolver" /> -->
</beans>
\ No newline at end of file