<dependencies>
<dependency>
<groupId>org.jboss.jbossremoting</groupId>
<artifactId>jboss-remoting</artifactId>
<version>3.4.0.Final</version>
</dependency>
</dependencies>
import org.jboss.remoting3.Endpoint;
import org.jboss.remoting3.Remoting;
import org.jboss.remoting3.spi.NetworkServerProvider;
import org.jboss.remoting3.spi.NetworkTopologyProvider;
public class RemotingConfig {
public void configure() {
try {
NetworkServerProvider serverProvider = Remoting.createServerProvider();
NetworkTopologyProvider topologyProvider = Remoting.createTopologyProvider();
serverProvider.initialize();
topologyProvider.initialize(serverProvider);
Endpoint endpoint = Remoting.createEndpoint("myEndpoint", serverProvider, topologyProvider);
endpoint.start();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
RemotingConfig config = new RemotingConfig();
config.configure();
}
}
public interface MyRemoteService {
String sayHello(String name);
}
public class MyRemoteServiceImpl implements MyRemoteService {
@Override
public String sayHello(String name) {
return "Hello, " + name + "!";
}
}
import org.jboss.remoting3.Endpoint;
import org.jboss.remoting3.Remoting;
import org.jboss.remoting3.spi.NetworkServerProvider;
import org.jboss.remoting3.spi.NetworkTopologyProvider;
public class Server {
public static void main(String[] args) {
try {
NetworkServerProvider serverProvider = Remoting.createServerProvider();
NetworkTopologyProvider topologyProvider = Remoting.createTopologyProvider();
serverProvider.initialize();
topologyProvider.initialize(serverProvider);
Endpoint endpoint = Remoting.createEndpoint("myEndpoint", serverProvider, topologyProvider);
endpoint.start();
endpoint.addConnectionProvider("http-remoting", new HTTPRemotingProvider());
endpoint.registerService("myService", new MyRemoteServiceImpl());
while (true) {
Thread.sleep(1000);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
import org.jboss.remoting3.Channel;
import org.jboss.remoting3.Endpoint;
import org.jboss.remoting3.Remoting;
import org.jboss.remoting3.spi.NetworkServerProvider;
import org.jboss.remoting3.spi.NetworkTopologyProvider;
public class Client {
public static void main(String[] args) {
try {
NetworkServerProvider serverProvider = Remoting.createServerProvider();
NetworkTopologyProvider topologyProvider = Remoting.createTopologyProvider();
serverProvider.initialize();
topologyProvider.initialize(serverProvider);
Endpoint endpoint = Remoting.createEndpoint("myEndpoint", serverProvider, topologyProvider);
endpoint.start();
Channel channel = endpoint.connectSync("http-remoting", "localhost", 8080);
channel.writeUTF("myService");
channel.writeUTF("sayHello");
channel.writeUTF("World");
channel.flush();
while (true) {
if (channel.receiveMessage()) {
String response = channel.readUTF();
System.out.println(response);
break;
}
}
channel.closeAsync();
endpoint.closeAsync();
} catch (Exception e) {
e.printStackTrace();
}
}
}