diff --git a/org.springframework.integration.adapter/src/main/resources/META-INF/spring-integration.parsers b/org.springframework.integration.adapter/src/main/resources/META-INF/spring-integration.parsers
index 2fce06ed96..0d0ab6afc7 100644
--- a/org.springframework.integration.adapter/src/main/resources/META-INF/spring-integration.parsers
+++ b/org.springframework.integration.adapter/src/main/resources/META-INF/spring-integration.parsers
@@ -6,5 +6,3 @@ httpinvoker-handler=org.springframework.integration.adapter.httpinvoker.config.H
mail-target=org.springframework.integration.adapter.mail.config.MailTargetParser
polling-mail-source=org.springframework.integration.adapter.mail.config.PollingMailSourceParser
imap-idle-mail-source=org.springframework.integration.adapter.mail.config.SubscribableImapIdleMailSourceParser
-rmi-gateway=org.springframework.integration.adapter.rmi.config.RmiGatewayParser
-rmi-handler=org.springframework.integration.adapter.rmi.config.RmiHandlerParser
\ No newline at end of file
diff --git a/org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/rmiGatewayParserTests.xml b/org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/rmiGatewayParserTests.xml
deleted file mode 100644
index cdb9308f7b..0000000000
--- a/org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/rmiGatewayParserTests.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/org.springframework.integration.adapter/src/main/java/org/springframework/integration/adapter/rmi/RmiGateway.java b/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/RmiGateway.java
similarity index 98%
rename from org.springframework.integration.adapter/src/main/java/org/springframework/integration/adapter/rmi/RmiGateway.java
rename to org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/RmiGateway.java
index 64fa109585..c124aea0af 100644
--- a/org.springframework.integration.adapter/src/main/java/org/springframework/integration/adapter/rmi/RmiGateway.java
+++ b/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/RmiGateway.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package org.springframework.integration.adapter.rmi;
+package org.springframework.integration.rmi;
import java.rmi.RemoteException;
import java.rmi.registry.Registry;
diff --git a/org.springframework.integration.adapter/src/main/java/org/springframework/integration/adapter/rmi/RmiHandler.java b/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/RmiHandler.java
similarity index 96%
rename from org.springframework.integration.adapter/src/main/java/org/springframework/integration/adapter/rmi/RmiHandler.java
rename to org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/RmiHandler.java
index 51299e967b..93761d9c5b 100644
--- a/org.springframework.integration.adapter/src/main/java/org/springframework/integration/adapter/rmi/RmiHandler.java
+++ b/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/RmiHandler.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package org.springframework.integration.adapter.rmi;
+package org.springframework.integration.rmi;
import org.springframework.integration.adapter.AbstractRemotingHandler;
import org.springframework.integration.handler.MessageHandler;
diff --git a/org.springframework.integration.adapter/src/main/java/org/springframework/integration/adapter/rmi/config/RmiGatewayParser.java b/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/config/RmiGatewayParser.java
similarity index 93%
rename from org.springframework.integration.adapter/src/main/java/org/springframework/integration/adapter/rmi/config/RmiGatewayParser.java
rename to org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/config/RmiGatewayParser.java
index 273a44e29e..e8b516b5bc 100644
--- a/org.springframework.integration.adapter/src/main/java/org/springframework/integration/adapter/rmi/config/RmiGatewayParser.java
+++ b/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/config/RmiGatewayParser.java
@@ -14,13 +14,13 @@
* limitations under the License.
*/
-package org.springframework.integration.adapter.rmi.config;
+package org.springframework.integration.rmi.config;
import org.w3c.dom.Element;
import org.springframework.beans.factory.support.BeanDefinitionBuilder;
import org.springframework.integration.adapter.config.AbstractRemotingGatewayParser;
-import org.springframework.integration.adapter.rmi.RmiGateway;
+import org.springframework.integration.rmi.RmiGateway;
import org.springframework.util.StringUtils;
/**
diff --git a/org.springframework.integration.adapter/src/main/java/org/springframework/integration/adapter/rmi/config/RmiHandlerParser.java b/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/config/RmiHandlerParser.java
similarity index 91%
rename from org.springframework.integration.adapter/src/main/java/org/springframework/integration/adapter/rmi/config/RmiHandlerParser.java
rename to org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/config/RmiHandlerParser.java
index c0ae87661e..54e3aca42e 100644
--- a/org.springframework.integration.adapter/src/main/java/org/springframework/integration/adapter/rmi/config/RmiHandlerParser.java
+++ b/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/config/RmiHandlerParser.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package org.springframework.integration.adapter.rmi.config;
+package org.springframework.integration.rmi.config;
import java.rmi.registry.Registry;
@@ -23,8 +23,8 @@ import org.w3c.dom.Element;
import org.springframework.beans.factory.support.BeanDefinitionBuilder;
import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser;
import org.springframework.integration.ConfigurationException;
-import org.springframework.integration.adapter.rmi.RmiGateway;
-import org.springframework.integration.adapter.rmi.RmiHandler;
+import org.springframework.integration.rmi.RmiGateway;
+import org.springframework.integration.rmi.RmiHandler;
import org.springframework.util.StringUtils;
/**
diff --git a/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/config/RmiNamespaceHandler.java b/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/config/RmiNamespaceHandler.java
new file mode 100644
index 0000000000..04b3a20cb0
--- /dev/null
+++ b/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/config/RmiNamespaceHandler.java
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2002-2008 the original author or authors.
+ *
+ * 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.
+ */
+
+package org.springframework.integration.rmi.config;
+
+import org.springframework.beans.factory.xml.NamespaceHandlerSupport;
+
+/**
+ * Namespace handler for Spring Integration's rmi namespace.
+ *
+ * @author Mark Fisher
+ */
+public class RmiNamespaceHandler extends NamespaceHandlerSupport {
+
+ public void init() {
+ this.registerBeanDefinitionParser("rmi-gateway", new RmiGatewayParser());
+ this.registerBeanDefinitionParser("rmi-handler", new RmiHandlerParser());
+ }
+
+}
diff --git a/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/config/spring-integration-rmi-1.0.xsd b/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/config/spring-integration-rmi-1.0.xsd
new file mode 100644
index 0000000000..302f7b0b63
--- /dev/null
+++ b/org.springframework.integration.rmi/src/main/java/org/springframework/integration/rmi/config/spring-integration-rmi-1.0.xsd
@@ -0,0 +1,53 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Defines an RMI-based gateway adapter.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Defines an RMI-based MessageHandler adapter.
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/org.springframework.integration.rmi/src/main/resources/META-INF/spring.handlers b/org.springframework.integration.rmi/src/main/resources/META-INF/spring.handlers
new file mode 100644
index 0000000000..0d5e3711c6
--- /dev/null
+++ b/org.springframework.integration.rmi/src/main/resources/META-INF/spring.handlers
@@ -0,0 +1 @@
+http\://www.springframework.org/schema/integration/rmi=org.springframework.integration.rmi.config.RmiNamespaceHandler
\ No newline at end of file
diff --git a/org.springframework.integration.rmi/src/main/resources/META-INF/spring.schemas b/org.springframework.integration.rmi/src/main/resources/META-INF/spring.schemas
new file mode 100644
index 0000000000..22e878cbcb
--- /dev/null
+++ b/org.springframework.integration.rmi/src/main/resources/META-INF/spring.schemas
@@ -0,0 +1 @@
+http\://www.springframework.org/schema/integration/rmi/spring-integration-rmi-1.0.xsd=org/springframework/integration/rmi/config/spring-integration-rmi-1.0.xsd
\ No newline at end of file
diff --git a/org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/RmiHandlerTests.java b/org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/RmiHandlerTests.java
similarity index 97%
rename from org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/RmiHandlerTests.java
rename to org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/RmiHandlerTests.java
index 7d8a3658d5..dd68ec6ced 100644
--- a/org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/RmiHandlerTests.java
+++ b/org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/RmiHandlerTests.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package org.springframework.integration.adapter.rmi;
+package org.springframework.integration.rmi;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
@@ -31,6 +31,7 @@ import org.springframework.integration.message.Message;
import org.springframework.integration.message.MessageBuilder;
import org.springframework.integration.message.MessageHandlingException;
import org.springframework.integration.message.StringMessage;
+import org.springframework.integration.rmi.RmiHandler;
import org.springframework.remoting.RemoteLookupFailureException;
import org.springframework.remoting.rmi.RmiServiceExporter;
diff --git a/org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/RmiGatewayParserTests.java b/org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/RmiGatewayParserTests.java
similarity index 97%
rename from org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/RmiGatewayParserTests.java
rename to org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/RmiGatewayParserTests.java
index b66e0dd654..4f36b1dfa3 100644
--- a/org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/RmiGatewayParserTests.java
+++ b/org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/RmiGatewayParserTests.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package org.springframework.integration.adapter.rmi.config;
+package org.springframework.integration.rmi.config;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
@@ -24,9 +24,9 @@ import org.junit.Test;
import org.springframework.beans.DirectFieldAccessor;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
-import org.springframework.integration.adapter.rmi.RmiGateway;
import org.springframework.integration.channel.MessageChannel;
import org.springframework.integration.message.MessageChannelTemplate;
+import org.springframework.integration.rmi.RmiGateway;
/**
* @author Mark Fisher
diff --git a/org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/RmiHandlerParserTests.java b/org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/RmiHandlerParserTests.java
similarity index 92%
rename from org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/RmiHandlerParserTests.java
rename to org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/RmiHandlerParserTests.java
index a54c5e5261..65c714d980 100644
--- a/org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/RmiHandlerParserTests.java
+++ b/org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/RmiHandlerParserTests.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package org.springframework.integration.adapter.rmi.config;
+package org.springframework.integration.rmi.config;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
@@ -24,12 +24,12 @@ import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
-import org.springframework.integration.adapter.rmi.RmiGateway;
-import org.springframework.integration.adapter.rmi.RmiHandler;
import org.springframework.integration.channel.MessageChannel;
import org.springframework.integration.channel.QueueChannel;
import org.springframework.integration.message.Message;
import org.springframework.integration.message.StringMessage;
+import org.springframework.integration.rmi.RmiGateway;
+import org.springframework.integration.rmi.RmiHandler;
/**
* @author Mark Fisher
diff --git a/org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/StubRemoteInvocationExecutor.java b/org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/StubRemoteInvocationExecutor.java
similarity index 93%
rename from org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/StubRemoteInvocationExecutor.java
rename to org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/StubRemoteInvocationExecutor.java
index 9e254df922..b905172ba7 100644
--- a/org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/StubRemoteInvocationExecutor.java
+++ b/org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/StubRemoteInvocationExecutor.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package org.springframework.integration.adapter.rmi.config;
+package org.springframework.integration.rmi.config;
import org.springframework.remoting.support.DefaultRemoteInvocationExecutor;
diff --git a/org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/rmiGatewayParserTests.xml b/org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/rmiGatewayParserTests.xml
new file mode 100644
index 0000000000..531deb890e
--- /dev/null
+++ b/org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/rmiGatewayParserTests.xml
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/rmiHandlerParserTests.xml b/org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/rmiHandlerParserTests.xml
similarity index 66%
rename from org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/rmiHandlerParserTests.xml
rename to org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/rmiHandlerParserTests.xml
index 4107f76495..ec41b53ab8 100644
--- a/org.springframework.integration.adapter/src/test/java/org/springframework/integration/adapter/rmi/config/rmiHandlerParserTests.xml
+++ b/org.springframework.integration.rmi/src/test/java/org/springframework/integration/rmi/config/rmiHandlerParserTests.xml
@@ -2,10 +2,13 @@
+ http://www.springframework.org/schema/integration/spring-integration-1.0.xsd
+ http://www.springframework.org/schema/integration/rmi
+ http://www.springframework.org/schema/integration/rmi/spring-integration-rmi-1.0.xsd">
@@ -13,6 +16,6 @@
-
+
\ No newline at end of file