Skip to content

Commit

Permalink
[Dubbo-3764]Merge dubbo rpc xmlrpc (#3764) (#3775)
Browse files Browse the repository at this point in the history
* Create constants for 'hash.names' and 'hash.arguments' (#3744)
* Merge dubbo-rpc-xmlrpc (#3764)
* Removing .gitignore
* Rename package name
* Add Apache License
* Rename groupID name and url
* Update dubbo-rpc-xmlrpc version and add as a dependency in dubbo-all
* Replace package for "org.apache.dubbo.xml" and rename "com.alibaba.*" to "org.apache.dubbo"
* Fix the name of artifactID
* Remove unused files and add dubbo-rpc-xml as a module in dubbo-rpc
* Remove authors and delete files that are duplicate in the main repo have one
* Fix the name of package and remove unnecessary space
* Remove unnecessary space
* Remove authors
* Fix imports and remove authors from pom
* Update groupID and the name of package
* Remove unused tags
* Add dubbo-rpc-xml as a dependency on dubbo-bom
* Fix package names
* Call JettyHttpBinder from remoting module to avoid duplicated files
* Fix unit tests and upgrade to JUnit 5
* Call JettyHttpBinder from remoting module to avoid duplicated files
* Add external dependencies on dubbo-dependencies-bom
  • Loading branch information
Daniela Marques de Morais authored and ralf0131 committed May 14, 2019
1 parent d77a009 commit 6ca5a10
Show file tree
Hide file tree
Showing 13 changed files with 664 additions and 0 deletions.
8 changes: 8 additions & 0 deletions dubbo-all/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -212,6 +212,13 @@
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-rpc-xml</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-registry-api</artifactId>
Expand Down Expand Up @@ -576,6 +583,7 @@
<include>org.apache.dubbo:dubbo-rpc-memcached</include>
<include>org.apache.dubbo:dubbo-rpc-redis</include>
<include>org.apache.dubbo:dubbo-rpc-rest</include>
<include>org.apache.dubbo:dubbo-rpc-xml</include>
<include>org.apache.dubbo:dubbo-filter-validation</include>
<include>org.apache.dubbo:dubbo-filter-cache</include>
<include>org.apache.dubbo:dubbo-cluster</include>
Expand Down
5 changes: 5 additions & 0 deletions dubbo-bom/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -222,6 +222,11 @@
<artifactId>dubbo-rpc-rest</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-rpc-xml</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-registry-api</artifactId>
Expand Down
7 changes: 7 additions & 0 deletions dubbo-dependencies-bom/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,7 @@
<sofa_registry_version>5.2.0</sofa_registry_version>
<gson_version>2.8.5</gson_version>
<jsonrpc_version>1.2.0</jsonrpc_version>
<mortbay_jetty_version>6.1.26</mortbay_jetty_version>
<portlet_version>2.0</portlet_version>
<maven_flatten_version>1.1.0</maven_flatten_version>
<revision>2.7.2-SNAPSHOT</revision>
Expand Down Expand Up @@ -297,6 +298,12 @@
<artifactId>jetty-servlet</artifactId>
<version>${jetty_version}</version>
</dependency>
<dependency>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty</artifactId>
<version>${mortbay_jetty_version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
Expand Down
88 changes: 88 additions & 0 deletions dubbo-rpc/dubbo-rpc-xml/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@

dubbo-rpc-xmlrpc
=====================
A RPC Extension for XML-RPC(http://ws.apache.org/xmlrpc)

## Maven dependency:
```xml
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-rpc</artifactId>
<version>2.7.2-SNAPSHOT</version>
</dependency>

```

## Configure:
Define xmlrpc protocol:
```xml
<dubbo:protocol name="xmlrpc" port="8080" server="jetty" />
```

Set default protocol:
```xml
<dubbo:provider protocol="xmlrpc" />
```

Set service protocol:
```xml
<dubbo:service protocol="xmlrpc" />
```

Multi port:
```xml
<dubbo:protocol id="xmlrpc1" name="xmlrpc" port="8080" />
<dubbo:protocol id="xmlrpc2" name="xmlrpc" port="8081" />
```
Multi protocol:
```xml
<dubbo:protocol name="dubbo" port="20880" />
<dubbo:protocol name="xmlrpc" port="8080" />
```
<!-- multi protocols -->
```xml
<dubbo:service id="helloService" interface="org.apache.hello.api.HelloService" version="1.0.0" protocol="dubbo,xmlrpc" />
```


Jetty Server: (default)
```xml
<dubbo:protocol ... server="jetty" />

Or Jetty9:
<dubbo:protocol ... server="jetty9" />

```
Maven:
```xml
<dependency>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty</artifactId>
<version>6.1.26</version>
</dependency>
```

Servlet Bridge Server: (recommend)
```xml
<dubbo:protocol ... server="servlet" />

```

web.xml:
```xml
<servlet>
<servlet-name>dubbo</servlet-name>
<servlet-class>com.alibaba.dubbo.remoting.http.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dubbo</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
```
Cors support:
```xml
<dubbo:protocol name="xmlrpc" ... />
<dubbo:parameter key="cors" value="true" />
</dubbo:protocol>
```
66 changes: 66 additions & 0 deletions dubbo-rpc/dubbo-rpc-xml/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
<!--
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.
-->
<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">
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-rpc</artifactId>
<version>${revision}</version>
</parent>

<artifactId>dubbo-rpc-xml</artifactId>
<packaging>jar</packaging>
<name>${project.artifactId}</name>
<description>The xml rpc module of dubbo project</description>
<properties>
<xmlrpc_version>3.1.3</xmlrpc_version>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<skip_maven_deploy>false</skip_maven_deploy>
</properties>
<url>https://github.com/apache/incubator-dubbo</url>

<dependencies>
<dependency>
<groupId>org.apache.xmlrpc</groupId>
<artifactId>xmlrpc-server</artifactId>
<version>${xmlrpc_version}</version>
</dependency>

<dependency>
<groupId>org.apache.xmlrpc</groupId>
<artifactId>xmlrpc-client</artifactId>
<version>${xmlrpc_version}</version>
</dependency>

<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-remoting-http</artifactId>
<version>${project.parent.version}</version>
</dependency>

<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-compatible</artifactId>
<version>${project.parent.version}</version>
</dependency>
</dependencies>

</project>
Loading

0 comments on commit 6ca5a10

Please sign in to comment.