You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by ge...@apache.org on 2010/10/18 09:41:41 UTC

svn commit: r1023669 [1/5] - in /servicemix/documentation/trunk: ./ src/ src/etc/ src/main/ src/main/scala/ src/main/scala/scalate/ src/main/webapp/ src/main/webapp/WEB-INF/ src/main/webapp/WEB-INF/scalate/ src/main/webapp/WEB-INF/scalate/layouts/ src/...

Author: gertv
Date: Mon Oct 18 07:41:39 2010
New Revision: 1023669

URL: http://svn.apache.org/viewvc?rev=1023669&view=rev
Log:
Initial stab at a Scalate-based documentation project

Added:
    servicemix/documentation/trunk/src/
    servicemix/documentation/trunk/src/etc/
    servicemix/documentation/trunk/src/etc/logback.xml
    servicemix/documentation/trunk/src/main/
    servicemix/documentation/trunk/src/main/scala/
    servicemix/documentation/trunk/src/main/scala/scalate/
    servicemix/documentation/trunk/src/main/scala/scalate/Boot.scala
    servicemix/documentation/trunk/src/main/webapp/
    servicemix/documentation/trunk/src/main/webapp/WEB-INF/
    servicemix/documentation/trunk/src/main/webapp/WEB-INF/scalate/
    servicemix/documentation/trunk/src/main/webapp/WEB-INF/scalate/layouts/
    servicemix/documentation/trunk/src/main/webapp/WEB-INF/scalate/layouts/default.ssp
    servicemix/documentation/trunk/src/main/webapp/WEB-INF/scalate/layouts/print.ssp
    servicemix/documentation/trunk/src/main/webapp/WEB-INF/web.xml
    servicemix/documentation/trunk/src/main/webapp/camel/
    servicemix/documentation/trunk/src/main/webapp/camel/camel-deployment.conf
    servicemix/documentation/trunk/src/main/webapp/camel/camel-index.conf
    servicemix/documentation/trunk/src/main/webapp/getting-started/
    servicemix/documentation/trunk/src/main/webapp/getting-started/technology-selection.conf
    servicemix/documentation/trunk/src/main/webapp/index.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-bean.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-camel.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-cxf-bc.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-cxf-se.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-drools.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-eip.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-file.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-ftp.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-http.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-jms.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-mail.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-osworkflow.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-quartz.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-saxon.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-scripting.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-snmp.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-validation.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-vfs.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-wsn2005.conf
    servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-xmpp.conf
    servicemix/documentation/trunk/src/main/webapp/manual.conf
    servicemix/documentation/trunk/src/main/webapp/nmr/
    servicemix/documentation/trunk/src/main/webapp/nmr/nmr-camel.conf
    servicemix/documentation/trunk/src/main/webapp/nmr/nmr-event-listeners.conf
    servicemix/documentation/trunk/src/main/webapp/nmr/nmr-index.conf
    servicemix/documentation/trunk/src/main/webapp/scripts/
    servicemix/documentation/trunk/src/main/webapp/scripts/jquery.cookie.js
    servicemix/documentation/trunk/src/main/webapp/scripts/jquery.js
    servicemix/documentation/trunk/src/main/webapp/scripts/jquery.jstree.js
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/apple/
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/apple/bg.jpg   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/apple/d.png   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/apple/dot_for_ie.gif   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/apple/style.css   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/apple/throbber.gif   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/classic/
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/classic/d.png   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/classic/dot_for_ie.gif   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/classic/style.css   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/classic/throbber.gif   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/default/
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/default-rtl/
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/default-rtl/d.gif   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/default-rtl/d.png   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/default-rtl/dots.gif   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/default-rtl/style.css   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/default-rtl/throbber.gif   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/default/d.gif   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/default/d.png   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/default/style.css   (with props)
    servicemix/documentation/trunk/src/main/webapp/scripts/themes/default/throbber.gif   (with props)
    servicemix/documentation/trunk/src/main/webapp/theme/
    servicemix/documentation/trunk/src/main/webapp/theme/images/
    servicemix/documentation/trunk/src/main/webapp/theme/images/bg.png
    servicemix/documentation/trunk/src/main/webapp/theme/master.css
    servicemix/documentation/trunk/src/main/webapp/theme/print.css
    servicemix/documentation/trunk/src/main/webapp/toc.ssp
Modified:
    servicemix/documentation/trunk/pom.xml

Modified: servicemix/documentation/trunk/pom.xml
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/pom.xml?rev=1023669&r1=1023668&r2=1023669&view=diff
==============================================================================
--- servicemix/documentation/trunk/pom.xml (original)
+++ servicemix/documentation/trunk/pom.xml Mon Oct 18 07:41:39 2010
@@ -1,87 +1,225 @@
-<?xml version="1.0"?>
-<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">
+<?xml version="1.0" encoding="UTF-8"?>
 <!--
-  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.
+
+    Copyright (C) 2009-2010 the original author or authors.
+    See the notice.md file distributed with this work for additional
+    information regarding copyright ownership.
+
+    Licensed 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.
+
 -->
-  <modelVersion>4.0.0</modelVersion>
-  
+
+<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">
+
   <parent>
-    <groupId>org.apache</groupId>
-    <artifactId>apache</artifactId>
-    <version>7</version>
+    <groupId>org.apache.servicemix</groupId>
+    <artifactId>servicemix-pom</artifactId>
+    <version>4</version>
   </parent>
 
-  <groupId>org.apache.servicemix.docs</groupId>
-  <artifactId>parent</artifactId>
-  <packaging>pom</packaging>
-  <version>4.3-SNAPSHOT</version>
-  
-  <name>Apache ServiceMix (Documentation)</name>
-  <description>The ServiceMix reference documentation</description>
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.servicemix</groupId>
+  <artifactId>documentation</artifactId>
+  <name>Apache ServiceMix Documentation</name>
+  <version>4.3.0-SNAPSHOT</version>
+  <packaging>war</packaging>
 
   <properties>
-    <components.version>2010.02-SNAPSHOT</components.version>
-    <servicemix-version>4.3-SNAPSHOT</servicemix-version>
+    <netbeans.hint.deploy.server>Tomcat60</netbeans.hint.deploy.server>
+    <jetty-port>8080</jetty-port>
+    <jetty-war-dir>${basedir}/target/webapp/</jetty-war-dir>
+    <scalate.version>1.3-SNAPSHOT</scalate.version>
+    <scalate.editor>${env.SCALATE_EDITOR}</scalate.editor>
+    <scalate.mode>production</scalate.mode>
+    <scalate.workdir>${basedir}/target/scalateWorkDir</scalate.workdir>
+    <servicemix.version>4.3.0-SNAPSHOT</servicemix.version>
   </properties>
 
-  <distributionManagement>
-    <site>
-      <id>people.apache.org</id>
-      <url>scp://people.apache.org/www/servicemix.apache.org/docs/${servicemix-version}</url>
-    </site>
-  </distributionManagement>
-
-  <modules>
-    <module>common</module>
-    <module>docs</module>
-  </modules>
+  <dependencies>
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>servlet-api</artifactId>
+      <version>2.5</version>
+      <scope>provided</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.fusesource.scalate</groupId>
+      <artifactId>scalate-wikitext</artifactId>
+      <version>${scalate.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>ch.qos.logback</groupId>
+      <artifactId>logback-classic</artifactId>
+      <version>0.9.24</version>
+    </dependency>
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-api</artifactId>
+      <version>1.6.0</version>
+    </dependency>
+  </dependencies>
 
   <build>
-    <defaultGoal>install</defaultGoal>
     <plugins>
       <plugin>
-      <artifactId>maven-antrun-plugin</artifactId>
+        <groupId>org.scala-tools</groupId>
+        <artifactId>maven-scala-plugin</artifactId>
+        <version>2.14.2-SNAPSHOT</version>
+        <executions>
+          <execution>
+            <goals>
+              <goal>compile</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-resources-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>filter</id>
+            <phase>generate-resources</phase>
+            <goals>
+              <goal>copy-resources</goal>
+            </goals>
+            <configuration>
+              <outputDirectory>${project.build.directory}/webapp</outputDirectory>
+              <resources>
+                <resource>
+                  <directory>src/main/webapp</directory>
+                  <filtering>true</filtering>
+                </resource>
+              </resources>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.fusesource.scalate</groupId>
+        <artifactId>maven-scalate-plugin</artifactId>
+        <version>1.3-SNAPSHOT</version>
+        <executions>
+          <execution>
+            <goals>
+              <goal>sitegen</goal>
+              <goal>precompile</goal>
+            </goals>
+            <configuration>
+              <warSourceDirectory>${project.build.directory}/webapp</warSourceDirectory>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <artifactId>maven-war-plugin</artifactId>
+        <configuration>
+          <warSourceDirectory>${project.build.directory}/webapp</warSourceDirectory>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.mortbay.jetty</groupId>
+        <artifactId>jetty-maven-plugin</artifactId>
+        <version>7.1.5.v20100705</version>
+        <configuration>
+          <!-- When editing the conf files, you can comment this line to run
+              mvn jetty:run
+             to have a live web site
+          -->
+          <webAppSourceDirectory>${jetty-war-dir}</webAppSourceDirectory>
+
+          <systemProperties>
+            <systemProperty>
+              <name>scalate.editor</name>
+              <value>${scalate.editor}</value>
+            </systemProperty>
+            <systemProperty>
+              <name>scalate.workdir</name>
+              <value>${scalate.workdir}</value>
+            </systemProperty>
+            <systemProperty>
+              <name>scalate.mode</name>
+              <value>${scalate.mode}</value>
+            </systemProperty>
+            <systemProperty>
+              <name>logback.configurationFile</name>
+              <value>${basedir}/src/etc/logback.xml</value>
+            </systemProperty>
+          </systemProperties>
+        </configuration>
+      </plugin>
+
+      <plugin>
+        <artifactId>maven-antrun-plugin</artifactId>
+        <version>1.2</version>
         <executions>
           <execution>
-            <phase>initialize</phase>
+            <id>preprocess</id>
             <configuration>
               <tasks>
-                <!-- a little hack to ensure site:deploy works fine -->
-                <mkdir dir="target/site" />
-                <touch file="target/site/UPDATE" />
-              </tasks>
+                <echo message="Generating PDF using Prince XML (http://www.princexml.com/)"/>
+                <exec executable="prince">
+                  <arg value="${project.build.directory}/sitegen/manual.html" />
+                  <arg value="${project.build.directory}/sitegen/manual.pdf" />
+                  <arg value="--log"/>
+                  <arg value="${project.build.directory}/prince.log"/>
+                </exec>
+            </tasks>
             </configuration>
             <goals>
               <goal>run</goal>
             </goals>
+            <phase>verify</phase>
           </execution>
         </executions>
       </plugin>
+
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>build-helper-maven-plugin</artifactId>
+        <version>1.5</version>
+        <executions>
+          <execution>
+            <id>attach-artifacts</id>
+            <phase>verify</phase>
+            <goals>
+              <goal>attach-artifact</goal>
+            </goals>
+            <configuration>
+              <artifacts>
+                <artifact>
+                  <file>${project.build.directory}/sitegen/manual.pdf</file>
+                  <type>pdf</type>
+                </artifact>
+              </artifacts>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+
     </plugins>
   </build>
-    
-  <pluginRepositories>
-    <pluginRepository>
-      <releases>
-        <enabled>false</enabled>
-      </releases>
-      <id>apache.snapshots</id>
-      <name>Apache Snapshot Repository</name>
-      <url>http://repository.apache.org/snapshots</url>
-    </pluginRepository>
-  </pluginRepositories>
+
+  <profiles>
+    <profile>
+      <id>live</id>
+      <properties>
+        <jetty-war-dir>${basedir}/src/main/webapp/</jetty-war-dir>
+        <scalate.mode>development</scalate.mode>
+      </properties>
+    </profile>
+  </profiles>
 
 </project>
+

Added: servicemix/documentation/trunk/src/etc/logback.xml
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/etc/logback.xml?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/etc/logback.xml (added)
+++ servicemix/documentation/trunk/src/etc/logback.xml Mon Oct 18 07:41:39 2010
@@ -0,0 +1,14 @@
+<configuration>
+
+  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+    <!-- encoders are assigned the type
+         ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
+    <encoder>
+      <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
+    </encoder>
+  </appender>
+
+  <root level="info">
+    <appender-ref ref="STDOUT" />
+  </root>
+</configuration>
\ No newline at end of file

Added: servicemix/documentation/trunk/src/main/scala/scalate/Boot.scala
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/scala/scalate/Boot.scala?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/scala/scalate/Boot.scala (added)
+++ servicemix/documentation/trunk/src/main/scala/scalate/Boot.scala Mon Oct 18 07:41:39 2010
@@ -0,0 +1,9 @@
+package scalate
+
+class Boot {
+
+  def run = {
+    System.out.println("---> Starting the bloody thing")
+  }
+
+}
\ No newline at end of file

Added: servicemix/documentation/trunk/src/main/webapp/WEB-INF/scalate/layouts/default.ssp
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/WEB-INF/scalate/layouts/default.ssp?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/WEB-INF/scalate/layouts/default.ssp (added)
+++ servicemix/documentation/trunk/src/main/webapp/WEB-INF/scalate/layouts/default.ssp Mon Oct 18 07:41:39 2010
@@ -0,0 +1,67 @@
+<%--
+Copyright (C) 2009-2010 the original author or authors.
+See the notice.md file distributed with this work for additional
+information regarding copyright ownership.
+
+Licensed 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.
+--%>
+<%@ var body: String %>
+<%@ var title: String = "Apache ServiceMix ${servicemix.version}" %>
+<!DOCTYPE html>
+<html>
+<head>
+  <link href="${uri("/theme/master.css")}" rel="Stylesheet" type="text/css" />
+  <title>${title}</title>
+
+  <script type="text/javascript" src="${uri("/scripts/jquery.js")}"></script>
+  <script type="text/javascript" src="${uri("/scripts/jquery.cookie.js")}"></script>
+  <script type="text/javascript" src="${uri("/scripts/jquery.jstree.js")}"></script>
+
+  <script>
+    $(document).ready(function(){
+	  $("#navigation").jstree({
+		"themes": {
+		  "theme": "classic"
+		},
+		"plugins" : [ "themes", "html_data", "cookies", "themes" ]
+  	  });
+    });
+  </script>
+</head>
+<body>
+  <div id="page">
+    <header>
+      ${title}
+    </header>
+
+
+
+    <div id="main">
+      <nav>
+        <div id="navigation">
+            ${include("/toc.ssp")}
+        </div>
+
+      </nav>
+
+      <div id="body">
+        <%= body %>
+      </div>
+    </div>
+
+      <footer>
+        <p>Thanks for using Apache ServiceMix!</p>
+      </footer>
+  </div>
+</body>
+</html>
\ No newline at end of file

Added: servicemix/documentation/trunk/src/main/webapp/WEB-INF/scalate/layouts/print.ssp
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/WEB-INF/scalate/layouts/print.ssp?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/WEB-INF/scalate/layouts/print.ssp (added)
+++ servicemix/documentation/trunk/src/main/webapp/WEB-INF/scalate/layouts/print.ssp Mon Oct 18 07:41:39 2010
@@ -0,0 +1,35 @@
+<%--
+Copyright (C) 2009-2010 the original author or authors.
+See the notice.md file distributed with this work for additional
+information regarding copyright ownership.
+
+Licensed 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.
+--%>
+<%@ var body: String %>
+<%@ var title: String = "Apache ServiceMix ${servicemix.version}" %>
+<!DOCTYPE html>
+<html>
+<head>
+  <link href="${uri("/theme/print.css")}" rel="Stylesheet" type="text/css" />
+  <title>${title}</title>
+</head>
+<body>
+  <div id="titlepage">
+    <div id="title">Apache ServiceMix</div>
+    <div id="subtitle">Version ${servicemix.version}</div>
+  </div>
+  <div id="main">
+    <%= body %>
+  </div>
+</body>
+</html>
\ No newline at end of file

Added: servicemix/documentation/trunk/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/WEB-INF/web.xml?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/WEB-INF/web.xml (added)
+++ servicemix/documentation/trunk/src/main/webapp/WEB-INF/web.xml Mon Oct 18 07:41:39 2010
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Copyright (C) 2009-2010 the original author or authors.
+    See the notice.md file distributed with this work for additional
+    information regarding copyright ownership.
+
+    Licensed 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.
+
+-->
+
+<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
+	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
+	version="2.5">
+
+  <display-name>Apache ServiceMix Documentation</display-name>
+
+  <description>
+    Apache ServiceMix Documentation
+  </description>
+
+  <filter>
+    <filter-name>TemplateEngineFilter</filter-name>
+    <filter-class>org.fusesource.scalate.servlet.TemplateEngineFilter</filter-class>
+  </filter>
+  <filter-mapping>
+    <filter-name>TemplateEngineFilter</filter-name>
+    <url-pattern>/*</url-pattern>
+  </filter-mapping>
+
+  <welcome-file-list>
+    <welcome-file>index.html</welcome-file>
+  </welcome-file-list>
+</web-app>

Added: servicemix/documentation/trunk/src/main/webapp/camel/camel-deployment.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/camel/camel-deployment.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/camel/camel-deployment.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/camel/camel-deployment.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,114 @@
+h1. Deployment options
+There are a few different ways to deploy Camel routes on ServiceMix ${servicemx.version}:
+* deploy routes in a plain Spring XML file
+* deploy a bundle containing
+*# routes defined in a Spring XML file
+*# routes defined in the Java or Scala DSL
+
+Camel routes can also be deployed as part of a JBI SA, allowing you use Camel for routing between JBI endpoints - this option will be discussed later when we are talking about using JBI inside ServiceMix 4.
+
+h2. Deploy as a plain Spring XML file
+ServiceMix ${servicemix.version} supports the deployment of plain Spring XML files, automatically creating and starting the Spring ApplicationContext from the XML file.
+
+In order to leverage this feature to create and start Camel routes, drop a file with this syntax in the {{$SERVICEMIX_HOME/deploy}} folder:
+{code:lang=xml}
+<?xml version="1.0" encoding="UTF-8"?>
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xmlns:camel="http://camel.apache.org/schema/spring"
+       xsi:schemaLocation="
+          http://www.springframework.org/schema/beans
+            http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
+          http://camel.apache.org/schema/spring
+            http://camel.apache.org/schema/spring/camel-spring-${camel-version}.xsd">
+
+  <camelContext xmlns="http://camel.apache.org/schema/spring">
+    <!-- add Camel routes, interceptors,... here --> 
+  </camelContext>
+
+</beans>
+{code}
+
+h3. An example
+Just create a new XML file in the deploy folder with the code below to start a route to copy files from one directory to another.
+{code:lang=xml}
+<?xml version="1.0" encoding="UTF-8"?>
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xmlns:camel="http://camel.apache.org/schema/spring"
+       xsi:schemaLocation="
+          http://www.springframework.org/schema/beans
+            http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
+          http://camel.apache.org/schema/spring
+            http://camel.apache.org/schema/spring/camel-spring-${camel-version}.xsd">
+
+  <camelContext xmlns="http://camel.apache.org/schema/spring">
+    <route>
+      <from uri="file:input"/>
+      <log message="Copying ${file:name} to the output directory"/>
+      <to uri="file:output"/>
+    </route>
+  </camelContext>
+
+</beans>
+{code}
+
+h2. Deploy as an OSGi bundle
+The Spring XML file can also be deployed as part of a bundle by adding it to the {{META-INF/spring}} folder.  When the bundle is being started, the Spring ApplicationContext is created and started as well.  This kind of deployment also allows using Java or Scala Routebuilders for defining the routes.
+
+h3. Using the XML file to define the routes
+The route can be defined directly in the XML file you add to {{META-INF/spring}}, similar to the example shown before.
+
+h3. Using a Java or Scala RouteBuilder
+When using a Java (or Scala) RouteBuilder to define your Camel routes, the Spring XML file refers to the packages containing the RouteBuilder classes:
+{code:lang=xml}
+<?xml version="1.0" encoding="UTF-8"?>
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xmlns:camel="http://camel.apache.org/schema/spring"
+       xsi:schemaLocation="
+          http://www.springframework.org/schema/beans
+            http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
+          http://camel.apache.org/schema/spring
+            http://camel.apache.org/schema/spring/camel-spring-${camel-version}.xsd">
+
+  <camelContext xmlns="http://camel.apache.org/schema/spring">
+    <package>org.apache.servicemix.manual.camel</package>
+  </camelContext>
+
+</beans>
+{code}
+
+The matching Java RouteBuilder class could look like this
+{code:lang=java}
+package org.apache.servicemix.manual.camel;
+
+import org.apache.camel.builder.RouteBuilder;
+
+public class MyRouteBuilder extends RouteBuilder {
+
+  public void configure() {
+    from("file:input")
+      .log("Copying ${file:name} to the output directory")
+      .to("file:output");
+  }
+
+}
+{code}
+
+A similar Scala RouteBuilder could look like
+{code:lang=scala}
+package org.apache.servicemix.manual.camel;
+
+import org.apache.camel.scala.dsl.builder.RouteBuilder;
+
+class MyRouteBuilder extends RouteBuilder {
+
+  "file:input" ==> {
+    log("Copying ${file:name} to the output directory")
+    to("file:output")
+  }
+
+}
+{code}
+

Added: servicemix/documentation/trunk/src/main/webapp/camel/camel-index.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/camel/camel-index.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/camel/camel-index.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/camel/camel-index.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,3 @@
+h1. Apache Camel
+
+//TODO: Add some info about Apache Camel
\ No newline at end of file

Added: servicemix/documentation/trunk/src/main/webapp/getting-started/technology-selection.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/getting-started/technology-selection.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/getting-started/technology-selection.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/getting-started/technology-selection.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,34 @@
+h1. Technology selection guide
+ServiceMix 4 offers a set of different messaging and integration technologies:
+* ActiveMQ
+* Camel
+* CXF
+* JBI
+* NMR
+
+Depending on the solution you're building, you want to select one or more of these technologies.  Below are some guidelines to help you pick the right mix for your problem.
+
+h2. When to use Camel?
+For any integration scenario, we recommend to start as simple as possible.  Camel allows you to build routes for integration scenario's quickly and efficiently.  You can deploy these routes directly on ServiceMix by deploying the plain Spring XML route or by packaging the route in an OSGi bundle.
+
+As you need more (advanced) features, start combining Camel with ActiveMQ, CXF and/or the NMR
+
+h2. When to use ActiveMQ?
+ActiveMQ is a JMS message broker, featuring support for clustering, pluggable persistence mechanism, master-slave configuration for failover, ...
+
+ServiceMix 4 includes an instance of the ActiveMQ broker, which can be combined with Camel to provide easy-to-use message persistence and reliable messaging.
+
+After setting up multiple instances of ActiveMQ (or ServiceMix 4) on the network, you can configure ActiveMQ clustering or master-slave mode to allow for a more reliable and scalable set-up.
+
+h2. When to use CXF?
+CXF is an open-source services framework that you can use to suit your WS-* standards integration needs.  It allows you to use common programming APIs like JAX-RS or JAX-WS for building your own services and to expose them to the outside world.
+
+You can use CXF from within your Camel routes with the Camel CXF component.
+
+h2. When to use NMR?
+The NMR provides the basic ESB features for ServiceMix 4.  You can use it to connect multiple camel routes in a lightweight way.  It can also be used as a common transport on which you can add container-level auditing by registering your own ExchangeListener implementation.
+
+h2. When to use JBI?
+If you want to build a full-blown SOA solution using BPEL, ServiceMix includes a version of Apache ODE that integrates well with JBI messaging.  Because we still support JBI 1.0 on ServiceMix, you can also move your existing JBI artifacts from ServiceMix 3 to the new container with no/minimal changes.
+
+

Added: servicemix/documentation/trunk/src/main/webapp/index.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/index.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/index.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/index.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1 @@
+h1. ServiceMix ${servicemix.version} Documentation
\ No newline at end of file

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-bean.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-bean.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-bean.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-bean.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,34 @@
+h1. servicemix-bean
+
+h2. Overview
+The ServiceMix Bean component provides integration with beans (POJOs) with the JBI bus to make it easy to use POJOs to process JBI message exchanges. Like in an Message Driven Bean in J2EE a POJO will receive a message from the NMR and process it in any way it likes. Unlike in a JMS component where the coding is already done the Bean component gives the developer the freedom to create any type of message handling but it must be hand coded all the way.
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/bean/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:bean="http://servicemix.apache.org/bean/1.0">
+
+  <!-- add bean:endpoint definitions here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-bean component only defines one endpoint, called {{bean:endpoint}}.  It can be used to receive and send message exchanges from/to the NMR.
+
+h2. {{Endpoint bean:endpoint}}
+
+h3. Using a Java class
+When definining a {{bean:endpoint}} specifying a Java class name, a new instance of this class will be created for handling a single message exchange.
+
+{code}
+    <beans xmlns:bean="http://servicemix.apache.org/bean/1.0"
+           xmlns:my="urn:org:servicmix:docs:examples">
+
+      <bean:endpoint service="my:service" endpoint="endpoint"
+                     class="org.apache.servicemix.docs.bean.MyHandlerBean"/>
+
+    </beans>
+{code}
+
+h3. TODO: add other configuration types

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-camel.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-camel.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-camel.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-camel.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,187 @@
+h1. servicemix-camel
+
+h2. Overview
+The servicemix-camel component provides support for using Apache Camel to provide a full set of Enterprise Integration Patterns and flexible routing and transformation in both Java code or Spring XML to route services on the Normalized Message Router.
+
+h3. Namespace and camel-context.xml
+When creating a servicemix-camel service unit, we reuse the default Camel namespace {{http://camel.apache.org/schema/spring}}.
+
+This is an example {{camel-context.xml}} which uses the Spring DSL to define the Camel routes
+{code:lang=xml}
+<?xml version="1.0" encoding="UTF-8"?>
+<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
+         http://camel.apache.org/schema/spring
+           http://camel.apache.org/schema/spring/camel-spring.xsd">
+
+  <camelContext xmlns="http://camel.apache.org/schema/spring">
+    <route>
+      <!-- route defined in the Spring DSL -->
+    </route>
+  </camelContext>
+
+</beans>
+{code}
+
+It is also possible to use the Java DSL inside a servicemix-camel service unit by referring to the package that contains the {{RouteBuilder}} classes.  An example: this {{camel-context.xml}} file will activate all routes defined by {{RouteBuilder}}s in the {{org.apache.servicemix.example.camel}} package.
+{code:lang=xml}
+<?xml version="1.0" encoding="UTF-8"?>
+<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
+         http://camel.apache.org/schema/spring
+           http://camel.apache.org/schema/spring/camel-spring.xsd">
+
+  <camelContext xmlns="http://camel.apache.org/schema/spring">
+    <packages>org.apache.servicemix.examples.camel</packages>
+  </camelContext>
+
+</beans>
+{code}
+
+h2. URI
+Camel routes use URIs to interact with the ESB.  You can use these URIs to expose new endpoints on the ESB as well as to send message exchanges to existing endpoints.
+
+The snippet below automatically exposes a new endpoint to the bus, where the service QName is {{{http://foo.bar.org}MyService}} and the endpoint name is {{MyEndpoint}}.
+{code:lang=java}
+from("jbi:endpoint:http://foo.bar.org/MyService/MyEndpoint")
+{code}
+
+When a JBI endpoint appears at the end of a route, as in the example below, that will send 
+{code:lang=java}
+to("jbi:endpoint:http://foo.bar.org/MyService/MyEndpoint")
+{code}
+
+The messages sent by this producer endpoint are sent to the already deployed JBI endpoint.
+
+h3. URI format
+
+{code}
+jbi:service:serviceNamespace[sep]serviceName[?options]
+jbi:endpoint:serviceNamespace[sep]serviceName[sep]endpointName[?options]
+jbi:name:endpointName[?options]
+{code}
+
+The separator that should be used in the endpoint URL is:
+* {{/}} (forward slash), if {{serviceNamespace}} starts with {{http://}}
+* {{:}} (colon), if {{serviceNamespace}} starts with {{urn:}}.
+
+You can append query options to the URI in the following format, {{?option=value&amp;option=value&amp;...}}
+
+h4. Examples
+h5. Using {{jbi:service}}
+
+{code}
+jbi:service:http://foo.bar.org/MyService
+jbi:service:urn:foo:bar:MyService
+{code}
+
+h5. Using {{jbi:endpoint}}
+{code}
+jbi:endpoint:urn:foo:bar:MyService:MyEndpoint
+jbi:endpoint:http://foo.bar.org/MyService/MyEndpoint
+{code}
+
+h5. Using {{jbi:name}}
+When using {{jbi:name}}, the component uses {{http://activemq.apache.org/camel/schema/jbi}endpoint}} as the default Service QName.
+{code}
+jbi:name:MyEndpoint
+{code}
+
+h3. URI options
+|| Name || Default value || Description ||
+| {{mep}} | MEP of the Camel Exchange | Allows users to override the MEP set on the Exchange object. Valid values for this option are {{in-only}}, {{in-out}}, {{robust-in-out}} and {{in-optional-out}}. |
+| {{operation}} | Value of the {{jbi.operation}} header property | Specifies the JBI operation for the {{MessageExchange}}.  If no value is supplied, the JBI binding will use the value of the {{jbi.operation}} header property. |
+| {{serialization}} | {{basic}} | Default value ({{basic}}) will check if headers are serializable by looking at the type, setting this option to {{strict}} will detect objects that can not be serialized although they implement the {{Serializable}} interface.  Set to {{nocheck}} to disable this check altogether, note that this should only be used for in-memory transports like SEDAFlow, otherwise you can expect to get {{NotSerializableException}} thrown at runtime. |
+| {{convertException}} | {{false}} | {{false}}: send any exceptions thrown from the Camel route back unmodified \\ {{true}}: convert all exceptions to a JBI FaultException (can be used to avoid non-serializable exceptions or to implement generic error handling |
+
+h4. Examples
+{code}
+jbi:service:http://foo.bar.org/MyService?mep=in-out       (override the MEP, use InOut JBI MessageExchanges)
+jbi:endpoint:urn:foo:bar:MyService:MyEndpoint?mep=in      (override the MEP, use InOnly JBI MessageExchanges)
+jbi:endpoint:urn:foo:bar:MyService:MyEndpoint?operation={http://www.mycompany.org}AddNumbers
+(overide the operation for the JBI Exchange to {http://www.mycompany.org}AddNumbers)
+{code}
+
+h2. Example routes
+h3. Simple Spring route
+This simple Spring route registers a new endpoint on the ESB (service {{{urn:org:example}Router}}, endpoint name {{orders}}).  The message exchange contents will be logged and then forwarded to another JBI service endpoint (service {{{http://services.example.org}OrderService}})
+{code:lang=xml}
+<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
+         http://camel.apache.org/schema/spring
+           http://camel.apache.org/schema/spring/camel-spring.xsd">
+
+          <camelContext xmlns="http://camel.apache.org/schema/spring">
+            <route>
+              <from uri="jbi:endpoint:urn:org:example:Router:orders"/>
+              <to uri="log:OrderLogging"/>
+              <to uri="jbi:service:http://services.example.org/OrderService" />
+            </route>
+          </camelContext>
+
+</beans>
+{code}
+
+h3. The same route using the Java DSL
+When we implement the same route in the Java DSL, we first code our {{RouteBuilder}} implementation
+{code:lang=java}
+package org.apache.servicemix.example;
+
+import org.apache.camel.builder.RouteBuilder;
+
+public class JbiRouteBuilder extends RouteBuilder {
+
+  @Override
+  public void configure() throws Exception {
+    from("jbi:endpoint:urn:org:example:Router:orders")
+      .to("log:OrderLogging")
+      .to("jbi:service:http://services.example.org/OrderService");
+  }
+}
+{code}
+
+In our {{camel-context.xml}} file, we just refer to the {{org.apache.servicemix.example}} package that contains our {{JbiRouteBuilder}}.
+{code:lang=xml}
+<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
+         http://camel.apache.org/schema/spring
+           http://camel.apache.org/schema/spring/camel-spring.xsd">
+
+  <camelContext xmlns="http://camel.apache.org/schema/spring">
+    <route>
+      <packageScan>
+        <package>org.apache.servicemix.example</package>
+      </packageScan>
+    </route>
+  </camelContext>
+
+</beans>
+{code}
+
+
+
+
+
+h2. Special considerations
+h3. Stream handling
+If you are using a stream type as the message body, you should be aware that a stream is only capable of being read once. So if you enable {{DEBUG}} logging, the body is usually logged and thus read. To deal with this, Camel has a {{streamCaching}} option that can cache the stream, enabling you to read it multiple times.
+
+{code:lang=java}
+from("jbi:endpoint:http://foo.bar.org/MyService/MyEndpoint")
+  .streamCaching()
+  .to("xslt:transform.xsl", "bean:doSomething");
+{code}
+
+Camel will cache large input streams (by default, over 64K) in a {{temp}} file using {{CachedOutputStream}}. When you close the input stream, the temp file will be deleted.

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-cxf-bc.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-cxf-bc.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-cxf-bc.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-cxf-bc.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,32 @@
+h1. servicemix-cxf-bc
+
+h2. Overview
+A JBI compliant HTTP/SOAP or JMS/SOAP binding component named servicemix-cxf-bc which use apache cxf internally.
+
+The main features are:
+* JBI compliant Binding Component
+* Usable in a lightweight mode in servicemix.xml configuration files
+* SOAP 1.1 and 1.2 support
+* MIME attachments
+* Support for all MEPs as consumers or providers
+* SSL support
+* WS-Security support
+* WS-Policy support
+* WS-RM support
+* WS-Addressing support
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/cxfbc/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0">
+
+  <!-- add cxfbc:consumer or cxfbc:provider definitions here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-cxf-bc component defines two endpoints:
+- {{cxfbc:consumer}} :: a server-side cxf endpoint that will consume plain HTTP+SOAP requests and send them into the NMR to a given JBI endpoint
+- {{cxfbc:provider}} :: a client-side jbi endpoint which can receive requests from the NMR and send them to a given url where the service is provided
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-cxf-se.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-cxf-se.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-cxf-se.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-cxf-se.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,27 @@
+h1. servicemix-cxf-se
+
+h2. Overview
+ServiceMix CXF SE component is a JBI Service Engine exposing (annotated) POJO as services on the JBI Bus.
+It uses Apache CXF internally to perform service invocations and xml marshaling.
+
+Features:
+* jsr181 annotations
+* jaxb2/aegis/xmlbeans databinding
+* wsdl auto generation
+* java proxy support
+* MTOM / attachments support
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/cxfse/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:cxfse="http://servicemix.apache.org/cxfse/1.0">
+
+  <!-- add cxfse:endpoint definitions here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-cxf-bc component defines one endpoint type:
+- {{cxfse:endpoint}} :: no description yet
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-drools.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-drools.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-drools.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-drools.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,23 @@
+h1. servicemix-drools
+
+h2. Overview
+The ServiceMix Drools component provides JBI integration to the Drools Rules Engine.
+
+This Service Engine can be used to deploy a rules set that will implement a router or an actual service.
+
+A router will mostly act as a transparent proxy between the consumer and the target service provider mad will mostly be implemented by the jbi.route(uri) method below. This method creates a new exchange identical to the one received by the component and will send it to the specified destination. You can also send back a Fault if needed. A router can also be implemented by using directly the JBI Apis (available with the jbi helper) by using the provided client.
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/drools/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:drools="http://servicemix.apache.org/drools/1.0">
+
+  <!-- add drools:endpoint definitions here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-drools component defines one endpoint type:
+- {{drools:endpoint}} :: no description yet
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-eip.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-eip.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-eip.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-eip.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,30 @@
+h1. servicemix-eip
+
+h2. Overview
+The servicemix-eip component is a routing container where different routing patterns can be deployed as service unit.
+This component is based on the great Enterprise Integration Patterns book.
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/eip/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:drools="http://servicemix.apache.org/eip/1.0">
+
+  <!-- add one of the eip endpoint definitions here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-eip component defines several endpoint types:
+- {{eip:content-based-router}} :: Implements the Content-Based Router EIP
+- {{eip:message-filter}} :: Implements the Message Filter EIP
+- {{eip:pipeline}} :: Implements the Pipeline EIP
+- {{eip:static-recipient-list}} :: Implements the Static Recipient List EIP
+- {{eip:static-routing-slip}} :: Implements the Static Routing Slip EIP
+- {{eip:wire-tap}} :: Implements the Wire Tap EIP
+- {{eip:xpath-splitter}} :: Uses XPath to split a message
+- {{eip:split-aggregator}} :: Aggregates messages that have been split by the {{xpath-splitter}}
+- {{eip:content-enricher}} :: Implements the Content Enricher EIP
+- {{eip:resequencer}} :: Implements the Resequencer EIP
+- {{eip:async-bridge}} :: Handles an InOut exchange by correlating to separate InOnly exchanges
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-file.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-file.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-file.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-file.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,21 @@
+h1. servicemix-file
+
+h2. Overview
+The ServiceMix File component provides JBI integration to the file system. It can be used to read & write files via URI or to periodically poll directories for new files.
+
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/file/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:file="http://servicemix.apache.org/file/1.0">
+
+  <!-- add file:poller and file:sender definitions here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-file component defines two endpoint type:
+- {{file:poller}} :: Periodically polls a directory for files and sends an exchange for every file
+- {{file:sender}} :: Writes the contents of an exchange to a file
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-ftp.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-ftp.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-ftp.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-ftp.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,21 @@
+h1. servicemix-ftp
+
+h2. Overview
+The ServiceMix FTP component provides JBI integration to the FTP servers. It can be used to read & write files over FTPor to periodically poll directories for new files.
+
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/ftp/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:ftp="http://servicemix.apache.org/ftp/1.0">
+
+  <!-- add ftp:poller and ftp:sender definitions here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-ftp component defines two endpoint type:
+- {{ftp:poller}} :: Periodically polls a directory on an FTP server for files and sends an exchange for every file
+- {{ftp:sender}} :: Writes the contents of an exchange to a file on an FTP server
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-http.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-http.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-http.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-http.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,41 @@
+h1. servicemix-http
+
+h2. Overview
+ServiceMix ships with a JBI compliant HTTP/SOAP binding component named servicemix-http.
+
+Here are the main features:
+* JBI compliant Binding Component
+* Usable in a lightweight mode in servicemix.xml configuration files
+* Integrated HTTP server based on Jetty 6
+* HTTP Client using Jakarta Commons HTTP Client
+* Highly performant and scalable using Jetty 6 continuations
+* SOAP 1.1 and 1.2 support
+* MIME attachments
+* WS-Addressing support
+* WSDL based and XBean based deployments
+* Support for all MEPs as consumers or providers
+* SSL support
+* WS-Security support
+
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/http/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:http="http://servicemix.apache.org/http/1.0">
+
+  <!-- add http:consumer, http:soap-consumer
+           http:provider and http soap:provider definitions here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-http component defines four endpoint type:
+- {{http:consumer}} :: This endpoint allows you to expose a service in the ESB to the outside world over HTTP. Whenever it receives an HTTP request, it will interact with the configured services on the ESB to provide the HTTP response.
+- {{http:soap-consumer}} :: Similar to {{http:consumer}}, but specifically geared towards handing SOAP requests and responses
+- {{http:provider}} :: This endpoint allows you to access remote services from within the ESB.  It will perform an external HTTP request whenever it receives a JBI MessageExchange
+- {{http:soap-provider}} :: Similar to {{http:provider}}, but specifically geared towards performing SOAP requests
+
+It also provides one additional legacy endpoints, which are still available to ease migration from ServiceMix 3:
+- {{http:endpoint}} :: (Deprecated) Legacy endpoint, capable to acting as a consumer or provider based on the configuration
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-jms.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-jms.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-jms.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-jms.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,38 @@
+h1. servicemix-http
+
+h2. Overview
+ServiceMix ships with a JBI compliant JMS binding component named servicemix-jms.
+
+Here are the main features:
+* JBI compliant Binding Component
+* Usable in a lightweight mode in servicemix.xml configuration files
+* SOAP 1.1 and 1.2 support
+* MIME attachments
+* WS-Addressing support
+* WSDL based and XBean based deployments
+* Support for all MEPs as consumers or providers
+
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/jms/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:jms="http://servicemix.apache.org/jms/1.0">
+
+  <!-- add jms:consumer, jms:soap-consumer, jms:jca-consumer,
+           jms:provider, jms:soap-provider and jms:jca-provider definitions here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-jms component defines six endpoint type:
+- {{jms:consumer}} :: This endpoint allows you to expose a service in the ESB to the outside world over JMS. Whenever it receives a JMS message, it will interact with the configured services on the ESB.
+- {{jms:soap-consumer}} :: Similar to {{jms:consumer}}, but specifically geared towards handing SOAP requests and responses
+- {{jms:jca-consumer}} :: Similar to {{jms:consumer}}, but adds the possibility of using a JCA resource adapter
+- {{jms:provider}} :: This endpoint allows you to access remote services from within the ESB.  It will send a JMS message whenever it receives a JBI MessageExchange
+- {{jms:soap-provider}} :: Similar to {{jms:provider}}, but specifically geared towards performing SOAP requests
+- {{jms:jca-provider}} :: Similar to {{jms:provider}}, but adds the possibility of using a JCA resource adapter
+
+It also provides one additional legacy endpoints, which are still available to ease migration from ServiceMix 3:
+- {{jms:endpoint}} :: (Deprecated) Legacy endpoint, capable to acting as a consumer or provider based on the configuration
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-mail.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-mail.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-mail.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-mail.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,21 @@
+h1. servicemix-mail
+
+h2. Overview
+he ServiceMix Mail component provides support for receiving and sending mails via the enterprise service bus.
+
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/mail/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:mail="http://servicemix.apache.org/mail/1.0">
+
+  <!-- add mail:poller and mail:sender definitions here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-mail component defines two endpoint type:
+- {{mail:poller}} :: Connect to a POP3 or IMAP server and send a MessageExchange for every mail
+- {{mail:sender}} :: Connect to an SMTP server and send a mail for every JBI MessageExchange it receives
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-osworkflow.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-osworkflow.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-osworkflow.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-osworkflow.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,20 @@
+h1. servicemix-osworkflow
+
+h2. Overview
+The ServiceMix OSWorkflow component provides workflow functionality to the ESB. You can specify one or more workflows and it's processing will start when a valid message is received.
+
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/osworkflow/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:osworkflow="http://servicemix.apache.org/osworkflow/1.0">
+
+  <!-- add osworkflow:endpoint here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-osworkflow component defines a single endpoint type:
+- {{osworkflow:endpoint}} :: The endpoint will receive messages from the NMR and will then start the processing of the workflow.
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-quartz.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-quartz.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-quartz.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-quartz.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,19 @@
+h1. servicemix-quartz
+
+h2. Overview
+The servicemix-quartz component is a standard JBI Service Engine able to schedule and trigger jobs using the great Quartz scheduler.
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/quartz/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:osworkflow="http://servicemix.apache.org/quartz/1.0">
+
+  <!-- add quartz:endpoint here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-quartz component defines a single endpoint type:
+- {{quartz:endpoint}} :: The quartz endpoint can be used to fire message exchanges at a given (recurrent) time.
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-saxon.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-saxon.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-saxon.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-saxon.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,170 @@
+h1. servicemix-saxon
+
+h2. Overview
+The servicemix-saxon component is a standard JBI Service Engine for XSLT / XQuery. This component is based on Saxon and supports XSLT 2.0 and XPath 2.0, and XQuery 1.0.
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/saxon/1.0}}.  This is an example of {{xbean.xml}} file with a namespace definition with prefix {{saxon}}.
+{code}
+    <beans xmlns:saxon="http://servicemix.apache.org/saxon  /1.0">
+
+      <!-- add saxon:xslt, saxon:xquery or saxon:proxy definitions here -->
+
+    </beans>
+{code}
+
+h3. Endpoint types
+The servicemix-saxon component defines these endpoints:
+- {{saxon:xslt}} :: Translates the in message content using XSLT to send back the translated content in the out message
+- {{saxon:proxy}} :: Acts as a proxy for an endpoint, translating the message passed to/from the endpoint using XSLT
+- {{saxon:xquery}} :: Use xquery to extract parts of the XML
+
+h2. Endpoint {{saxon:xslt}}
+
+The XSLT endpoint can be used to apply an XSLT stylesheet to the incoming exchange and will return the transformed result as the output message.
+{code:lang=xml}
+<saxon:xslt service="test:xslt" endpoint="endpoint"
+            resource="classpath:transform.xsl" />
+{code}
+
+h3. Mandatory properties
+The endpoint requires one of these two properties to be specified:
+- {{resource}} ([Spring resource|http://springframework.org/docs/api/org/springframework/core/io/Resource.html]) :: the spring resource pointing to the XSLT stylesheet
+- {{expression}} ([ServiceMix expression|http://incubator.apache.org/servicemix/dist/servicemix-3.0-incubating/site/servicemix-core/apidocs/org/apache/servicemix/expression/Expression.html]) :: expression used to dynamically load the stylesheet
+
+h3. Optional properties
+- {{wsdlResource}} ([Spring resource|http://springframework.org/docs/api/org/springframework/core/io/Resource.html]) :: if set, the wsdl will be retrieved from the given Spring resource
+- {{transformerFactory}} (TransformerFactory, defaults to the Saxon implementation) :: TraX factory to create transformers
+- {{configuration}} ([Saxon configuration|http://www.saxonica.com/documentation/javadoc/net/sf/saxon/Configuration.html]) :: Saxon configuration object
+- {{result}} (String, defaults to {{dom}}) :: Allows specifying the output result type, possible values are {{dom}}, {{bytes}}, {{string}}
+- {{copyAttachments}}, {{copyProperties}} and {{copySubject}} (default to {{true}} ::  Configure to copy message attachments, properties and security subject over to the result message
+- {{useDomSourceForXslt}} (defaults to {{true}} :: when set to {{true}}, forces the transformation of the xslt stylesheet into a DOM document before giving it to the transformer
+- {{useDomSourceForContent}} (defaults to {{false}}) :: when set to {{true}}, forces the transformation of the incoming JBI message into a DOM document before giving it to the transformer
+- {{parameters}} :: a {{Map}} containing additional parameters to give to the transformation engine
+
+h3. Using properties and parameters
+All properties defined on the JBI exchange and input JBI message will be available for use inside the XSLT stylesheet as parameters.
+In addition to those properties and the one specified in the {{parameters}} property on the endpoint, the following objects are also available:
+- {{exchange}} :: the JBI exchange
+- {{in}} :: the input JBI NormalizedMessage
+- {{component}} :: the XsltEndpoint instance being called
+
+All those parameters can be accessed using XSLT standard ways using {{<xsl:param/>}}.
+
+h2. Endpoint {{saxon:proxy}}
+One common use case is the need to transform a request coming from a service and send it to another service and do the same with the response.  A simple example is the need to translate the request and responses between two SOAP endpoints.  Such a use case could be implemented using two XSLT endpoints and an EIP StaticRoutingSlip.  However, there are some drawbacks, as the operation is lost in the process, and a static routing slip can not be used to process InOnly exchanges.
+{code:lang=xml}
+<saxon:proxy service="test:proxy" endpoint="endpoint"
+             resource="classpath:transform-in.xsl"
+             outResource="classpath:transform-out.xsl"
+             faultResource="classpath:transform-fault.xsl">
+  <saxon:target>
+    <saxon:exchange-target service="test:echo" />
+  </saxon:target>
+</saxon:proxy>
+{code}
+
+h3. Mandatory properties
+Depending on the MEP, you have to set one or more XSL stylesheets to be used for converting the message payloads:
+- {{resource}} :: [Spring resource|http://springframework.org/docs/api/org/springframework/core/io/Resource.html] pointing to the XSLT stylesheet used to transform the input message
+- {{outResource}} :: [Spring resource|http://springframework.org/docs/api/org/springframework/core/io/Resource.html] pointing to the XSLT stylesheet used to transform the output message
+- {{faultResource}} :: [Spring resource|http://springframework.org/docs/api/org/springframework/core/io/Resource.html] pointing to the XSLT stylesheet used to transform the fault message
+- {{expression}} :: [ServiceMix expression|http://incubator.apache.org/servicemix/dist/servicemix-3.0-incubating/site/servicemix-core/apidocs/org/apache/servicemix/expression/Expression.html] used to dynamically load the stylesheet. If set, it will prevail against all resource, outResource and faultResource attributes
+
+You also have to specify the target service that should be invoked from this endpoint:
+- {{target}} :: ExchangeTarget that specifies the target service for the proxy endpoint
+
+h3. Optional properties
+- {{wsdlResource}} :: if set, the wsdl will be retrieved from the given ([Spring resource|http://springframework.org/docs/api/org/springframework/core/io/Resource.html])
+- {{transformerFactory}} (defaults to the Saxon implementation) :: TraX TransformerFactory to create transformers
+- {{configuration}} ([Saxon configuration|http://www.saxonica.com/documentation/javadoc/net/sf/saxon/Configuration.html]) :: Saxon configuration object
+- {{result}} (defaults to {{dom}}) :: Allows specifying the output result type, possible values are {{dom}}, {{bytes}}, {{string}}
+- {{copyAttachments}}, {{copyProperties}} and {{copySubject}} (default to {{true}}) ::  Configure to copy message attachments, properties and security subject over to the result message
+
+h2. Endpoint {{saxon:xquery}}
+The XQuery endpoint can be used to apply a selected XQuery to the input document.
+{code:lang=xml}
+<saxon:xquery service="test:xquery" endpoint="endpoint"
+              resource="classpath:query.xq" />
+{code}
+
+h3. Mandatory properties
+You need to specify one of {{query}}, {{resource}} or {{expression}}
+- {{query}} :: String containing the inlined XQuery expression
+- {{resource}} :: [Spring resource|http://springframework.org/docs/api/org/springframework/core/io/Resource.html] resource pointing to the XQuery
+- {{expression}} :: | [ServiceMix expression|http://incubator.apache.org/servicemix/dist/servicemix-3.0-incubating/site/servicemix-core/apidocs/org/apache/servicemix/expression/Expression.html]  to dynamically load the xquery
+
+h3. Optional properties
+- {{wsdlResource}} :: if set, the wsdl will be retrieved from the given ([Spring resource|http://springframework.org/docs/api/org/springframework/core/io/Resource.html])
+- {{outputProperties}} :: Map containing the Saxon specific output properties
+- {{configuration}} ([Saxon configuration|http://www.saxonica.com/documentation/javadoc/net/sf/saxon/Configuration.html]) :: Saxon configuration object
+- {{result}} (defaults to {{dom}}) :: Allows specifying the output result type, possible values are {{dom}}, {{bytes}}, {{string}}
+- {{copyAttachments}}, {{copyProperties}} and {{copySubject}} (default to {{true}}) ::  Configure to copy message attachments, properties and security subject over to the result message
+
+h2. Sample configurations
+h3. {{saxon:xslt}} : Dynamic stylesheet selection
+This endpoint configuration will dynamically load the XSL-T resource that is specified in the {{xslt.source}} property on the {{NormalizedMessage}}
+{code:lang=xml}
+<saxon:xslt service="test:xslt-dynamic" endpoint="endpoint">
+  <saxon:expression>
+    <bean class="org.apache.servicemix.expression.PropertyExpression">
+      <property name="property" value="xslt.source" />
+    </bean>
+  </saxon:expression>
+</saxon:xslt>
+{code}
+
+h3. {{saxon:xslt}} : Using parameters in the XSL-T stylesheet
+You can define a Map of parameters on the {{saxon:xslt}} endpoint.
+{code:lang=xml}
+<saxon:xslt service="test:xslt-params" endpoint="endpoint"
+            resource="classpath:parameter-test.xsl">
+  <property name="parameters">
+    <map>
+      <entry key="stringParam" value="cheeseyCheese"/>
+      <entry key="integerParam">
+        <bean class="java.lang.Integer">
+          <constructor-arg index="0" value="4002"/>
+        </bean>
+      </entry>
+    </map>
+  </property>
+</saxon:xslt>
+{code}
+
+In the XSL file, you can access the parameter values with {{<xsl:param/>}}.  You can also access headers on the NormalizedMessage (like e.g. {{org.apache.servicemix.file}}) with the same syntax.
+{code:lang=xml}
+<xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform' version='1.0'>
+  <xsl:param name="stringParam"/>
+  <xsl:param name="integerParam"/>
+  <xsl:param name="org.apache.servicemix.file" />
+  ...
+</xsl:stylesheet>
+{code}
+
+h3. {{saxon:xquery}} : Inlined XQuery and specific output configuration
+{code:lang=xml}
+<saxon:xquery service="test:xquery-inline" endpoint="endpoint">
+  <saxon:query>
+    for $x in /bookstore/book
+    where $x/price > 30
+    return $x/title
+  </saxon:query>
+  <saxon:outputProperties>
+    <saxon:property key="{http://saxon.sf.net/}wrap-result-sequence">yes</saxon:property>
+  </saxon:outputProperties>
+</saxon:xquery>
+{code}
+
+h3. {{saxon:xquery}} : Dynamic XQuery selection
+This endpoint configuration will dynamically load the XQuery resource that is specified in the {{xquery.source}} property on the {{NormalizedMessage}}
+{code:lang=xml}
+<saxon:xquery service="test:xquery-dynamic" endpoint="endpoint">
+  <saxon:expression>
+    <bean class="org.apache.servicemix.expression.PropertyExpression">
+      <property name="property" value="xquery.source" />
+    </bean>
+  </saxon:expression>
+</saxon:xquery>
+{code}
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-scripting.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-scripting.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-scripting.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-scripting.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,24 @@
+h1. servicemix-scripting
+
+h2. Overview
+The ServiceMix Scripting component provides support for processing scripts using JSR-223 compliant scripting languages.
+
+The component is currently shipping with:
+* Groovy (1.5.6)
+* JRuby (1.1.2)
+* Rhino JavaScript (1.7R1)
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/scripting/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:scripting="http://servicemix.apache.org/scripting/1.0">
+
+  <!-- add scripting:endpoint here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-scripting component defines a single endpoint type:
+- {{scripting:endpoint}} :: The scripting endpoint can be used to use scripts to handle exchanges or send new exchanges
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-snmp.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-snmp.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-snmp.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-snmp.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,20 @@
+h1. servicemix-snmp
+
+h2. Overview
+The ServiceMix SNMP component provides support for receiving SNMP events via the enterprise service bus by using the SNMP4J library.
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/snmp/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:snmp="http://servicemix.apache.org/snmp/1.0">
+
+  <!-- add snmp:poller or snmp:sender definitions here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-snmp component defines two endpoint types:
+- {{snmp:poller}} :: Periodically polls a device status using SNMP and sends the OIDs as a JBI MessageExchange
+- {{snmp:trap-consumer}} :: Consumes an SNMP trap message and sends the OIDs as a JBI MessageExchange
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-validation.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-validation.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-validation.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-validation.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,19 @@
+h1. servicemix-validation
+
+h2. Overview
+The ServiceMix Validation component provides schema validation of documents using JAXP 1.3 and XMLSchema or RelaxNG.
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/validation/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:scripting="http://servicemix.apache.org/validation/1.0">
+
+  <!-- add validation:endpoint here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-validation component defines a single endpoint type:
+- {{validation:endpoint}} :: Validates the incoming XML message - can be configured to fail the exchange or to send validation errors back to the sender in the message body.
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-vfs.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-vfs.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-vfs.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-vfs.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,20 @@
+h1. servicemix-vfs
+
+h2. Overview
+The ServiceMix VFS component provides support for reading from and writing to virtual file systems via the enterprise service bus by using the Apache commons-vfs library.
+
+h3. Namespace and xbean.xml
+The namespace URI for the servicemix-bean JBI component is {{http://servicemix.apache.org/vfs/1.0}}.  This is an example of <filename>xbean.xml</filename> file with a namespace definition with prefix {{bean}}.
+{code}
+<beans xmlns:vfs="http://servicemix.apache.org/vfs/1.0">
+
+  <!-- add vfs:poller or vfs:sender here -->
+
+</beans>
+{code}
+
+h3. Endpoint types
+The servicemix-vfs component defines two endpoint types:
+- {{vfs:poller}} :: Periodically polls a directory on one of the VFS-supported file systems for files and sends an exchange for every file
+- {{vfs:sender}} :: Writes the contents of an exchange to a file on one of the VFS-supported file systems
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-wsn2005.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-wsn2005.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-wsn2005.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-wsn2005.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,6 @@
+h1. servicemix-wsn2005
+
+h2. Overview
+The servicemix-wsn2005 is a standard JBI Service Engine which implements the WS-Notification specification from Oasis.
+
+

Added: servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-xmpp.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-xmpp.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-xmpp.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/jbi/servicemix-xmpp.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,6 @@
+h1. servicemix-xmpp
+
+h2. Overview
+The ServiceMix XMPP component is used to communicate with XMPP (Jabber) servers through the JBI bus.
+
+

Added: servicemix/documentation/trunk/src/main/webapp/manual.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/manual.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/manual.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/manual.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,30 @@
+{attributes:layout=/WEB-INF/scalate/layouts/print.ssp}
+
+h1. NMR
+{include:nmr-index}
+{include:nmr-camel}
+{include:nmr-event-listeners}
+
+h1. JBI
+
+h1. JBI Component Reference
+{include:jbi/servicemix-bean.conf}
+{include:jbi/servicemix-camel.conf}
+{include:jbi/servicemix-cxf-bc.conf}
+{include:jbi/servicemix-cxf-se.conf}
+{include:jbi/servicemix-drools.conf}
+{include:jbi/servicemix-eip.conf}
+{include:jbi/servicemix-file.conf}
+{include:jbi/servicemix-ftp.conf}
+{include:jbi/servicemix-http.conf}
+{include:jbi/servicemix-jms.conf}
+{include:jbi/servicemix-mail.conf}
+{include:jbi/servicemix-osworkflow.conf}
+{include:jbi/servicemix-quartz.conf}
+{include:jbi/servicemix-saxon.conf}
+{include:jbi/servicemix-scripting.conf}
+{include:jbi/servicemix-snmp.conf}
+{include:jbi/servicemix-validation.conf}
+{include:jbi/servicemix-vfs.conf}
+{include:jbi/servicemix-wsn2005.conf}
+{include:jbi/servicemix-xmpp.conf}

Added: servicemix/documentation/trunk/src/main/webapp/nmr/nmr-camel.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/nmr/nmr-camel.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/nmr/nmr-camel.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/nmr/nmr-camel.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,54 @@
+h1. Camel NMR Component
+
+The Camel NMR component is an adapter to the Normalized Message Router (NMR) in ServiceMix, which is intended for use by Camel applications deployed directly into the OSGi container.
+
+h2. Installing
+
+In order to be able to use this component, you first have to define it in  your Spring configuration file ({{META-INF/spring/*.xml}}) by adding the following {{bean}}:
+
+{code}
+<beans xmlns:osgi="http://www.springframework.org/schema/osgi" ... >
+    ...
+    <bean id="nmr" class="org.apache.servicemix.camel.nmr.ServiceMixComponent">
+        <property name="nmr">
+            <osgi:reference interface="org.apache.servicemix.nmr.api.NMR" />
+        </property>
+    </bean>
+    ...
+</beans>
+{code}
+
+h2. NMR consumer and producer endpoints
+
+The following code:
+
+{code}
+from("nmr:MyServiceEndpoint")
+{code}
+
+Automatically exposes a new endpoint to the bus with endpoint name {{MyServiceEndpoint}} (see [#URI-format]).
+
+When an NMR endpoint appears at the end of a route, for example:
+
+{code}
+to("nmr:MyServiceEndpoint")
+{code}
+
+The messages sent by this producer endpoint are sent to the already deployed JBI endpoint.
+
+h2. URI format
+
+{code}
+nmr:endpointName
+{code}
+
+h4. URI Options
+- *{{synchronous}}* (defaults to {{false}}) ::  When this is set to {{true}} on a consumer endpoint, an incoming, synchronous NMR Exchange will be handled on the sender's thread instead of being handled on a new thread of the NMR endpoint's thread pool |
+
+
+h3. Examples
+
+{code}
+from("nmr:MyServiceEndpoint")
+from("nmr:MyServiceEndpoint?synchronous=true").to("nmr:AnotherEndpoint")
+{code}

Added: servicemix/documentation/trunk/src/main/webapp/nmr/nmr-event-listeners.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/nmr/nmr-event-listeners.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/nmr/nmr-event-listeners.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/nmr/nmr-event-listeners.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,89 @@
+h1. Event listeners
+
+The NMR has a rich event API that can be used to receive all sort of notifications about what's happening in the NMR.
+Currently, two types of listeners are defined:
+- {{org.apache.servicemix.nmr.api.event.EndpointListener}}
+- {{org.apache.servicemix.nmr.api.event.ExchangeListener}}
+
+h2. Endpoint Listener
+
+h3. API
+The {{EndpointListener}} defined two methods:
+- {{endpointRegistered}} is called whenever a new endpoint is registered with the NMR
+- {{endpointUnregistered}} is called whenever an existing endpoint is unregistered
+
+{code:lang=java}
+public interface EndpointListener {
+    void endpointRegistered(InternalEndpoint endpoint);
+    void endpointUnregistered(InternalEndpoint endpoint);
+}
+{code}
+
+h3. Registering {{EndpointListener}}
+An {{EndpointListener}} can be registered directly with the NMR:
+{code:lang=java}
+nmr.getListenerRegistry().register(listener, null);
+{code}
+
+The recommended way of registering an {{EndpointListener}} is by adding it to the OSGi Service Registry, e.g. using a Blueprint XML file:
+{code:lang=xml}
+<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+           xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0">
+
+    <bean id="myListener" class="..."/>
+
+    <service ref="myListener">
+      <interfaces>
+        <value>org.apache.servicemix.nmr.api.event.EndpointListener</value>
+        <value>org.apache.servicemix.nmr.api.event.Listener</value>
+      </interfaces>
+    </service>
+
+</blueprint>
+{code}
+
+h3. Example
+An example of using an endpoint listener is shipped as part of the ServiceMix distribution.  It can be found in the {{examples/interceptors/endpoint}} directory.
+
+h2. ExchangeListener
+
+h3. API
+The {{ExchangeListener}} defined two methods:
+- {{exchangeSent}} is called whenever an exchange is sent to the NMR for delivery
+- {{exchangeDelivered}} is called whenever an exchange is being delivered to an endpoint
+- {{exchangeFailed}} is called when a failure occurs while handling an exchange
+
+
+{code:lang=java}
+public interface ExchangeListener {
+    void exchangeSent(Exchange exchange);
+    void exchangeDelivered(Exchange exchange);
+    void exchangeFailed(Exchange exchange);
+}
+{code}
+
+h3. Registering {{ExchangeListener}}
+An {{ExchangeListener}} can be registered directly with the NMR:
+{code:lang=java}
+nmr.getListenerRegistry().register(listener, null);
+{code}
+
+The recommended way of registering an {{ExchangeListener}} is by adding it to the OSGi Service Registry, e.g. using a Blueprint XML file:
+{code:lang=xml}
+<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+           xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0">
+
+    <bean id="myListener" class="..."/>
+
+    <service ref="myListener">
+      <interfaces>
+        <value>org.apache.servicemix.nmr.api.event.ExchangeListener</value>
+        <value>org.apache.servicemix.nmr.api.event.Listener</value>
+      </interfaces>
+    </service>
+
+</blueprint>
+{code}
+
+h3. Example
+An example of using an exchange listener is shipped as part of the ServiceMix distribution.  It can be found in the {{examples/interceptors/exchange}} directory.
\ No newline at end of file

Added: servicemix/documentation/trunk/src/main/webapp/nmr/nmr-index.conf
URL: http://svn.apache.org/viewvc/servicemix/documentation/trunk/src/main/webapp/nmr/nmr-index.conf?rev=1023669&view=auto
==============================================================================
--- servicemix/documentation/trunk/src/main/webapp/nmr/nmr-index.conf (added)
+++ servicemix/documentation/trunk/src/main/webapp/nmr/nmr-index.conf Mon Oct 18 07:41:39 2010
@@ -0,0 +1,3 @@
+h1. Introducing the NMR
+
+//TODO: Add some info about the NMR
\ No newline at end of file