请教一下各位,我现在想用C++做服务器端,Java做客户端。现在的问题是 端口已经一样了,而且客户端的IP地址也指定了服务器的IP地址。服务名称都是:NameService , 但是我当时在都用Java做服务,客户两端的时候,都会发送一个类似于标识一样的东西,比如说服务器发送了一个串,“Hello”,那么我客户端就应该按照这个Hello作出相应的处理
以下是Java客户端根据服务器端的Hello来转换成Echo的对象
NameComponent nc = new NameComponent("hello","");
NameComponent path[] = {nc};
Echo c = HiApp.EchoHelper.narrow(ncref.resolve(path));
但是在用C++做服务器端的时候,像这个Hello就变了。
以下是C++的
CosNaming::Name name;
name.length(2);
name[0].id = (const char*) "test"; // string copied
name[0].kind = (const char*) "my_context"; // string copied
name[1].id = (const char*) "Echo";
name[1].kind = (const char*) "Object";
作为Java客户端来讲,应该如何去读取他到底是什么标识?
"test" "my_context" "Echo""Object" 这4个应该去用那一个?

java 服务端与java 客户端通信,可以传输 java的String对象但是c++传过来的就不是String对象了你试着用String.getBytes去解析一下看
这个跟发的有关把,难不成你直接send的name对象的二进制流?那样的话不同编译器生成的顺序也不定的,不另外加子段会很悲剧的
。。。。。学习了
现在敢确定的是 两台机器的程序肯定不会有问题。 现在是也确实请求过去了。但是dos下的命令提示,我的请求被拒绝,检查了所有防火墙,杀毒软件,都没问题,又换了其他的开启端口的指令。也都是不行。以下是dos的提示F:\J2EE_TestProject\Struts_workspace\Must\src>java Clinet -ORBInitialHost 10.16.11.103 -ORBInitialPort 87502010-6-30 14:48:32 com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl <init>警告: "IOP00410201: (COMM_FAILURE) Connection failure: socketType: IIOP_CLEAR_TEXT; hostname: 10.16.11.103; port: 8750"org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 201 completed: No at com.sun.corba.se.impl.logging.ORBUtilSystemException.connectFailure(Unknown Source) at com.sun.corba.se.impl.logging.ORBUtilSystemException.connectFailure(Unknown Source) at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.<init>(Unknown Source) at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.<init>(Unknown Source) at com.sun.corba.se.impl.transport.SocketOrChannelContactInfoImpl.createConnection(Unknown Source) at com.sun.corba.se.impl.protocol.CorbaClientRequestDispatcherImpl.beginRequest(Unknown Source) at com.sun.corba.se.impl.protocol.CorbaClientDelegateImpl.request(Unknown Source) at com.sun.corba.se.impl.resolver.BootstrapResolverImpl.invoke(Unknown Source) at com.sun.corba.se.impl.resolver.BootstrapResolverImpl.resolve(UnknownSource) at com.sun.corba.se.impl.resolver.CompositeResolverImpl.resolve(UnknownSource) at com.sun.corba.se.impl.resolver.CompositeResolverImpl.resolve(UnknownSource) at com.sun.corba.se.impl.resolver.CompositeResolverImpl.resolve(UnknownSource) at com.sun.corba.se.impl.orb.ORBImpl.resolve_initial_references(UnknownSource) at Clinet.main(Clinet.java:20)Caused by: java.net.ConnectException: Connection refused: connect at sun.nio.ch.Net.connect(Native Method) at sun.nio.ch.SocketChannelImpl.connect(Unknown Source) at java.nio.channels.SocketChannel.open(Unknown Source) at com.sun.corba.se.impl.transport.DefaultSocketFactoryImpl.createSocket(Unknown Source) … 12 moreException in thread "main" org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 201 completed: No at com.sun.corba.se.impl.logging.ORBUtilSystemException.connectFailure(Unknown Source) at com.sun.corba.se.impl.logging.ORBUtilSystemException.connectFailure(Unknown Source) at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.<init>(Unknown Source) at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.<init>(Unknown Source) at com.sun.corba.se.impl.transport.SocketOrChannelContactInfoImpl.createConnection(Unknown Source) at com.sun.corba.se.impl.protocol.CorbaClientRequestDispatcherImpl.beginRequest(Unknown Source) at com.sun.corba.se.impl.protocol.CorbaClientDelegateImpl.request(Unknown Source) at com.sun.corba.se.impl.resolver.BootstrapResolverImpl.invoke(Unknown Source) at com.sun.corba.se.impl.resolver.BootstrapResolverImpl.resolve(UnknownSource) at com.sun.corba.se.impl.resolver.CompositeResolverImpl.resolve(UnknownSource) at com.sun.corba.se.impl.resolver.CompositeResolverImpl.resolve(UnknownSource) at com.sun.corba.se.impl.resolver.CompositeResolverImpl.resolve(UnknownSource) at com.sun.corba.se.impl.orb.ORBImpl.resolve_initial_references(UnknownSource) at Clinet.main(Clinet.java:20)Caused by: java.net.ConnectException: Connection refused: connect at sun.nio.ch.Net.connect(Native Method) at sun.nio.ch.SocketChannelImpl.connect(Unknown Source) at java.nio.channels.SocketChannel.open(Unknown Source) at com.sun.corba.se.impl.transport.DefaultSocketFactoryImpl.createSocket(Unknown Source) … 12 more
。。。。。学习了