You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by gn...@apache.org on 2006/10/28 21:52:08 UTC

svn commit: r468730 - in /incubator/servicemix/trunk/servicemix-web-console/src/main: java/org/apache/servicemix/web/ resources/ webapp/WEB-INF/ webapp/styles/

Author: gnodet
Date: Sat Oct 28 12:52:07 2006
New Revision: 468730

URL: http://svn.apache.org/viewvc?view=rev&rev=468730
Log:
Use spring 2.0 xsds, fix css, externalize jmx properties.
Allow the web app to start even if jdbc auditor or dot service are not configured

Added:
    incubator/servicemix/trunk/servicemix-web-console/src/main/resources/servicemix-web-console.properties
Modified:
    incubator/servicemix/trunk/servicemix-web-console/src/main/java/org/apache/servicemix/web/Auditor.java
    incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/applicationContext.xml
    incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/dispatcher-servlet.xml
    incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/web.xml
    incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/styles/style.css

Modified: incubator/servicemix/trunk/servicemix-web-console/src/main/java/org/apache/servicemix/web/Auditor.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/servicemix-web-console/src/main/java/org/apache/servicemix/web/Auditor.java?view=diff&rev=468730&r1=468729&r2=468730
==============================================================================
--- incubator/servicemix/trunk/servicemix-web-console/src/main/java/org/apache/servicemix/web/Auditor.java (original)
+++ incubator/servicemix/trunk/servicemix-web-console/src/main/java/org/apache/servicemix/web/Auditor.java Sat Oct 28 12:52:07 2006
@@ -1,28 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.apache.servicemix.web;
 
-import java.io.IOException;
 import java.net.URI;
 import java.text.DateFormat;
 import java.util.Arrays;
 import java.util.Calendar;
 import java.util.Date;
-import java.util.HashMap;
 import java.util.List;
-import java.util.Map;
 import java.util.Set;
 
 import javax.jbi.messaging.MessageExchange;
-import javax.jbi.messaging.MessagingException;
 import javax.jbi.messaging.NormalizedMessage;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.TransformerException;
 
 import org.apache.servicemix.JbiConstants;
 import org.apache.servicemix.jbi.audit.AuditorException;
 import org.apache.servicemix.jbi.audit.AuditorMBean;
 import org.apache.servicemix.jbi.jaxp.SourceTransformer;
 import org.apache.servicemix.jbi.messaging.MessageExchangeSupport;
-import org.xml.sax.SAXException;
 
 public class Auditor {
 
@@ -52,7 +61,6 @@
     
     public int getCount() throws AuditorException {
         int count = mbean.getExchangeCount();
-        System.err.println(count);
         return count;
     }
 
@@ -176,6 +184,7 @@
         public MessageInfo(NormalizedMessage message) {
             this.message = message;
         }
+        @SuppressWarnings("unchecked")
         public String getProperties() {
             StringBuilder sb = new StringBuilder();
             for (String name : (Set<String>) message.getPropertyNames()) {

Added: incubator/servicemix/trunk/servicemix-web-console/src/main/resources/servicemix-web-console.properties
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/servicemix-web-console/src/main/resources/servicemix-web-console.properties?view=auto&rev=468730
==============================================================================
--- incubator/servicemix/trunk/servicemix-web-console/src/main/resources/servicemix-web-console.properties (added)
+++ incubator/servicemix/trunk/servicemix-web-console/src/main/resources/servicemix-web-console.properties Sat Oct 28 12:52:07 2006
@@ -0,0 +1,7 @@
+jmx-service-url=service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
+jmx-username=smx
+jmx-password=smx
+jdbc-auditor-mbean-name=org.apache.servicemix:ContainerName=ServiceMix,Type=SystemService,Name=JdbcAuditor
+admin-commands-service-mbean-name=org.apache.servicemix:ContainerName=ServiceMix,Type=SystemService,Name=AdminCommandsService
+registry-mbean-service-name=org.apache.servicemix:ContainerName=ServiceMix,Type=SystemService,Name=Registry
+dot-view-mbean-service-name=org.apache.servicemix:ContainerName=ServiceMix,Type=SystemService,Name=DotViewService
\ No newline at end of file

Modified: incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/applicationContext.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/applicationContext.xml?view=diff&rev=468730&r1=468729&r2=468730
==============================================================================
--- incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/applicationContext.xml (original)
+++ incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/applicationContext.xml Sat Oct 28 12:52:07 2006
@@ -15,53 +15,55 @@
     See the License for the specific language governing permissions and
     limitations under the License.
 -->
-<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
-<beans>
-
-  <bean id="placeholderConfig" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" />
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xsi:schemaLocation="http://www.springframework.org/schema/beans 
+                           http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
+  
+  <bean id="placeholderConfig" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
+    <property name="location" value="classpath:servicemix-web-console.properties" />
+  </bean>
   
   <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
   </bean>
   
   <bean id="server" class="org.springframework.jmx.support.MBeanServerConnectionFactoryBean">
-    <property name="serviceUrl" value="service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi" />
+    <property name="serviceUrl" value="${jmx-service-url}" />
     <property name="environmentMap">
       <map>
         <entry key="jmx.remote.credentials">
           <bean class="org.springframework.util.StringUtils" factory-method="commaDelimitedListToStringArray">
-            <constructor-arg value="smx,smx" />
+            <constructor-arg value="${jmx-username},${jmx-password}" />
           </bean>
         </entry>
       </map>
-    </property>
+    </property>
+  </bean>
+  
+  <bean id="jmxProxy" abstract="true" class="org.springframework.jmx.access.MBeanProxyFactoryBean">
+    <property name="server" ref="server"/>
+    <property name="useStrictCasing" value="false" />
+    <property name="connectOnStartup" value="false" />
   </bean>
   
-  <bean id="jdbcAuditorMBean" class="org.springframework.jmx.access.MBeanProxyFactoryBean">
-    <property name="objectName" value="org.apache.servicemix:ContainerName=ServiceMix,Type=SystemService,Name=JdbcAuditor" />
+  <bean id="jdbcAuditorMBean" parent="jmxProxy">
+    <property name="objectName" value="${jdbc-auditor-mbean-name}" />
     <property name="proxyInterface" value="org.apache.servicemix.jbi.audit.AuditorMBean" />
-    <property name="server" ref="server"/>
-    <property name="useStrictCasing" value="false" />
   </bean>
   
-  <bean id="adminCommandsServiceMBean" class="org.springframework.jmx.access.MBeanProxyFactoryBean">
-    <property name="objectName" value="org.apache.servicemix:ContainerName=ServiceMix,Type=SystemService,Name=AdminCommandsService" />
+  <bean id="adminCommandsServiceMBean" parent="jmxProxy">
+    <property name="objectName" value="${admin-commands-service-mbean-name}" />
     <property name="proxyInterface" value="org.apache.servicemix.jbi.framework.AdminCommandsServiceMBean" />
-    <property name="server" ref="server"/>
-    <property name="useStrictCasing" value="false" />
   </bean>
   
-  <bean id="registryMBean" class="org.springframework.jmx.access.MBeanProxyFactoryBean">
-    <property name="objectName" value="org.apache.servicemix:ContainerName=ServiceMix,Type=SystemService,Name=Registry" />
+  <bean id="registryMBean" parent="jmxProxy">
+    <property name="objectName" value="${registry-mbean-service-name}" />
     <property name="proxyInterface" value="org.apache.servicemix.jbi.framework.RegistryMBean" />
-    <property name="server" ref="server"/>
-    <property name="useStrictCasing" value="false" />
   </bean>
   
-  <bean id="dotViewServiceMBean" class="org.springframework.jmx.access.MBeanProxyFactoryBean">
-    <property name="objectName" value="org.apache.servicemix:ContainerName=ServiceMix,Type=SystemService,Name=DotViewService" />
+  <bean id="dotViewServiceMBean" parent="jmxProxy">
+    <property name="objectName" value="${dot-view-mbean-service-name}" />
     <property name="proxyInterface" value="org.apache.servicemix.jbi.view.DotViewServiceMBean" />
-    <property name="server" ref="server"/>
-    <property name="useStrictCasing" value="false" />
   </bean>
   
   <bean id="proxyManager" class="org.apache.servicemix.web.model.ProxyManager">
@@ -73,16 +75,16 @@
     <constructor-arg ref="registryMBean" />
   </bean>
   
-  <bean id="auditor" class="org.apache.servicemix.web.Auditor" singleton="false">
+  <bean id="auditor" class="org.apache.servicemix.web.Auditor" scope="prototype">
     <constructor-arg ref="jdbcAuditorMBean" />
   </bean>
-  <bean id="components" factory-bean="registry" factory-method="getComponents" singleton="false" />
-  <bean id="endpoints" factory-bean="registry" factory-method="getEndpoints" singleton="false" />
-  <bean id="serviceAssemblies" factory-bean="registry" factory-method="getServiceAssemblies" singleton="false" />
-  <bean id="serviceUnits" factory-bean="registry" factory-method="getServiceUnits" singleton="false" />
-  <bean id="sharedLibraries" factory-bean="registry" factory-method="getSharedLibraries" singleton="false" />
+  <bean id="components" factory-bean="registry" factory-method="getComponents" scope="prototype" />
+  <bean id="endpoints" factory-bean="registry" factory-method="getEndpoints" scope="prototype" />
+  <bean id="serviceAssemblies" factory-bean="registry" factory-method="getServiceAssemblies" scope="prototype" />
+  <bean id="serviceUnits" factory-bean="registry" factory-method="getServiceUnits" scope="prototype" />
+  <bean id="sharedLibraries" factory-bean="registry" factory-method="getSharedLibraries" scope="prototype" />
   <bean id="component" class="org.apache.servicemix.web.ComponentFactoryBean">
-    <property name="registry" ref="registry" />
+    <property name="registry" ref="registry" />
   </bean>
   <bean id="endpoint" class="org.apache.servicemix.web.EndpointFactoryBean">
     <property name="registry" ref="registry" />

Modified: incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/dispatcher-servlet.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/dispatcher-servlet.xml?view=diff&rev=468730&r1=468729&r2=468730
==============================================================================
--- incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/dispatcher-servlet.xml (original)
+++ incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/dispatcher-servlet.xml Sat Oct 28 12:52:07 2006
@@ -15,76 +15,81 @@
     See the License for the specific language governing permissions and
     limitations under the License.
 -->
-<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
-<beans>
-
-  <bean id="handlerMapping" class="org.apache.servicemix.web.handler.BindingBeanNameUrlHandlerMapping" singleton="false" />
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xsi:schemaLocation="http://www.springframework.org/schema/beans 
+                           http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
+  
+  <bean id="handlerMapping" class="org.apache.servicemix.web.handler.BindingBeanNameUrlHandlerMapping" />
 
-  <bean name="/installComponent.action" class="org.apache.servicemix.web.controller.InstallComponent" autowire="constructor"  singleton="false">
+  <bean name="/installComponent.action" class="org.apache.servicemix.web.controller.InstallComponent" scope="request">
+    <constructor-arg ref="adminCommandsServiceMBean" />
     <property name="commandClass" value="org.apache.servicemix.web.controller.FileUploadBean" />
     <property name="formView" value="redirect:/components.jsp" />
     <property name="successView" value="redirect:/components.jsp" />
   </bean>
-  <bean name="/startComponent.action" class="org.apache.servicemix.web.controller.ComponentLifeCycle" singleton="false">
+  <bean name="/startComponent.action" class="org.apache.servicemix.web.controller.ComponentLifeCycle" scope="request">
     <constructor-arg ref="adminCommandsServiceMBean" />
     <constructor-arg value="start" />
     <property name="view" value="redirect:/components.jsp" />
   </bean>
-  <bean name="/stopComponent.action" class="org.apache.servicemix.web.controller.ComponentLifeCycle" singleton="false">
+  <bean name="/stopComponent.action" class="org.apache.servicemix.web.controller.ComponentLifeCycle" scope="request">
     <constructor-arg ref="adminCommandsServiceMBean" />
     <constructor-arg value="stop" />
     <property name="view" value="redirect:/components.jsp" />
   </bean>
-  <bean name="/shutdownComponent.action" class="org.apache.servicemix.web.controller.ComponentLifeCycle" singleton="false">
+  <bean name="/shutdownComponent.action" class="org.apache.servicemix.web.controller.ComponentLifeCycle" scope="request">
     <constructor-arg ref="adminCommandsServiceMBean" />
     <constructor-arg value="shutdown" />
     <property name="view" value="redirect:/components.jsp" />
   </bean>
-  <bean name="/uninstallComponent.action" class="org.apache.servicemix.web.controller.ComponentLifeCycle" singleton="false">
+  <bean name="/uninstallComponent.action" class="org.apache.servicemix.web.controller.ComponentLifeCycle" scope="request">
     <constructor-arg ref="adminCommandsServiceMBean" />
     <constructor-arg value="uninstall" />
     <property name="view" value="redirect:/components.jsp" />
   </bean>
 
-  <bean name="/installSharedLibrary.action" class="org.apache.servicemix.web.controller.InstallSharedLibrary" autowire="constructor"  singleton="false">
+  <bean name="/installSharedLibrary.action" class="org.apache.servicemix.web.controller.InstallSharedLibrary" scope="request">
+    <constructor-arg ref="adminCommandsServiceMBean" />
     <property name="commandClass" value="org.apache.servicemix.web.controller.FileUploadBean" />
     <property name="formView" value="redirect:/shared-libraries.jsp" />
     <property name="successView" value="redirect:/shared-libraries.jsp" />
   </bean>
 
-  <bean name="/deployServiceAssembly.action" class="org.apache.servicemix.web.controller.DeployServiceAssembly" autowire="constructor"  singleton="false">
+  <bean name="/deployServiceAssembly.action" class="org.apache.servicemix.web.controller.DeployServiceAssembly" scope="request">
+    <constructor-arg ref="adminCommandsServiceMBean" />
     <property name="commandClass" value="org.apache.servicemix.web.controller.FileUploadBean" />
     <property name="formView" value="redirect:/service-assemblies.jsp" />
     <property name="successView" value="redirect:/service-assemblies.jsp" />
   </bean>
-  <bean name="/startServiceAssembly.action" class="org.apache.servicemix.web.controller.ServiceAssemblyLifeCycle" singleton="false">
+  <bean name="/startServiceAssembly.action" class="org.apache.servicemix.web.controller.ServiceAssemblyLifeCycle" scope="request">
     <constructor-arg ref="adminCommandsServiceMBean" />
     <constructor-arg value="start" />
     <property name="view" value="redirect:/service-assemblies.jsp" />
   </bean>
-  <bean name="/stopServiceAssembly.action" class="org.apache.servicemix.web.controller.ServiceAssemblyLifeCycle" singleton="false">
+  <bean name="/stopServiceAssembly.action" class="org.apache.servicemix.web.controller.ServiceAssemblyLifeCycle" scope="request">
     <constructor-arg ref="adminCommandsServiceMBean" />
     <constructor-arg value="stop" />
     <property name="view" value="redirect:/service-assemblies.jsp" />
   </bean>
-  <bean name="/shutdownServiceAssembly.action" class="org.apache.servicemix.web.controller.ServiceAssemblyLifeCycle" singleton="false">
+  <bean name="/shutdownServiceAssembly.action" class="org.apache.servicemix.web.controller.ServiceAssemblyLifeCycle" scope="request">
     <constructor-arg ref="adminCommandsServiceMBean" />
     <constructor-arg value="shutdown" />
     <property name="view" value="redirect:/service-assemblies.jsp" />
   </bean>
-  <bean name="/uninstallServiceAssembly.action" class="org.apache.servicemix.web.controller.ServiceAssemblyLifeCycle" singleton="false">
+  <bean name="/uninstallServiceAssembly.action" class="org.apache.servicemix.web.controller.ServiceAssemblyLifeCycle" scope="request">
     <constructor-arg ref="adminCommandsServiceMBean" />
     <constructor-arg value="uninstall" />
     <property name="view" value="redirect:/service-assemblies.jsp" />
   </bean>
   
-  <bean name="/dot-flow.svg" class="org.apache.servicemix.web.controller.DotViewController" singleton="false">
+  <bean name="/dot-flow.svg" class="org.apache.servicemix.web.controller.DotViewController" scope="session">
     <constructor-arg ref="dotViewServiceMBean" />
     <property name="type" value="flow" />
     <property name="view" ref="dotView" />
   </bean>
   
-  <bean name="/dot-endpoints.svg" class="org.apache.servicemix.web.controller.DotViewController" singleton="false">
+  <bean name="/dot-endpoints.svg" class="org.apache.servicemix.web.controller.DotViewController" scope="request">
     <constructor-arg ref="dotViewServiceMBean" />
     <property name="type" value="endpoints" />
     <property name="view" ref="dotView" />

Modified: incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/web.xml?view=diff&rev=468730&r1=468729&r2=468730
==============================================================================
--- incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/web.xml (original)
+++ incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/WEB-INF/web.xml Sat Oct 28 12:52:07 2006
@@ -19,7 +19,7 @@
 <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
-         http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
+                             http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
          version="2.4">
 
     <description>
@@ -63,6 +63,9 @@
     <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
 		<listener>
 		  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
+		</listener>
+    <listener>
+      <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
 		</listener>
 
     <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
@@ -77,6 +80,9 @@
     <servlet-mapping>
         <servlet-name>dispatcher</servlet-name>
         <url-pattern>*.action</url-pattern>
+    </servlet-mapping>
+    <servlet-mapping>
+        <servlet-name>dispatcher</servlet-name>
         <url-pattern>*.svg</url-pattern>
     </servlet-mapping>
 

Modified: incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/styles/style.css
URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/styles/style.css?view=diff&rev=468730&r1=468729&r2=468730
==============================================================================
--- incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/styles/style.css (original)
+++ incubator/servicemix/trunk/servicemix-web-console/src/main/webapp/styles/style.css Sat Oct 28 12:52:07 2006
@@ -170,7 +170,7 @@
 
 #content {
   background: transparent url( '../images/bg02-white-right.png' ) no-repeat right top;
-  padding: 5px 25px 5px 210px;
+  padding: 5px 25px 5px 240px;
   display: block;
   text-align: left;
   min-height: 214px;