message eceived-怎么样调用mina的messageReceived中得到的返回值

问题描述

怎么样调用mina的messageReceived中得到的返回值
 public void messageReceived(IoSession session, Object packet) throws Exception {
        System.out.println("Received == " + packet.toString());
    }

mina中有个messageReceived方法,我已经从客户端把消息发送给服务器,也成功收到了服务器返回的数据,但是我现在想在另一个类中用这个返回的数据packet,怎么能调用它呢?

求懂的人告诉一下方法,编程新人不是很懂,卡在这不知道怎么继续了。

解决方案

究竟是给客户端用还是给服务端用啊。被你说糊涂了。收到消息就直接可以抛给业务handler了啊。mina,netty多是成熟的框架啊

解决方案二:

ConnectFuture future = getConnector().connect(new InetSocketAddress(PORT));
future.awaitUninterruptibly(5, TimeUnit.SECONDS);
session = future.getSession();
session.getConfig().setUseReadOperation(true);

Object message = session.read().awaitUninterruptibly().getMessage();
byte[] bytes = (byte[]) message;
System.out.println(new String(bytes));

handle其实就是一个拦截器,你可以直接new IoHandlerAdapter(),不做任何处理都可以。

session.read().awaitUninterruptibly()就是等待服务端返回消息。

其实就是把读消息变成同步阻塞的了。其实大多数客户端都是阻塞的情况。

时间: 2024-09-14 12:36:18

message eceived-怎么样调用mina的messageReceived中得到的返回值的相关文章

javascript-如何调用JavaScript中confirm()的返回值?

问题描述 如何调用JavaScript中confirm()的返回值? 大家好!我是一名JavaScript初学者,没有其他语言基础,在学习中,我想先对这门语言有一个宏观纵览,有了编程的思路,再回到细节中夯实基本功,以避免"淹死"到那些术语和细节中 我想实现这样一个功能: 1.利用prompt()函数让用户输入姓名 2.利用confirm()函数判断用户的性别 3.confirm()返回真,则alart()显示"你好,××先生! 反之,显示"你好,××女士!"

c++动态连接库中的函数返回值为指针,请问在主程序中如何调用这个库的函数。

问题描述 c++动态连接库中的函数返回值为指针,请问在主程序中如何调用这个库的函数. [code=c]extern "C" int __declspec(dllexport)add(int x, int y); extern "C" int __declspec(dllexport)*add1(); int add(int x, int y) { return x + y; } int *add1() { static int a[3]={1,2,3}; stati

c++-关于C++中对象作为返回值时候的调用复制构造函数

问题描述 关于C++中对象作为返回值时候的调用复制构造函数 #include using namespace std; class A { public: int v; A(int n){v = n;} A(const A &a) { v = a.v; cout << "Copy constructor called" << endl; } }; A Func() { /* A *b = new A(43); return *b; */ A b(54);

图片-java中的boolean返回值问题

问题描述 java中的boolean返回值问题 解决方案 怎么修改才能出正确的结果 解决方案二: 第八行和第十六行你是要调用函数吧. boolean isOverSpeed = mysar.isOverSpeed;改成 boolean isOverSpeed = mysar.isOverSpeed(); 解决方案三: 关于java中返回值的问题voidExecuteNonQuery()返回值的问题Java中keySet()返回值的排序问题

c#调用c++开发的dll const char* 返回值接收问题

原文:c#调用c++开发的dll const char* 返回值接收问题 用c#调用视频接口相关的dll,dll使用c++开发. c++接口定义如下: PLATFORM const char* Plat_GetValueStr(const char* propertyName, int iUserHandle);   c#接口定义如下: [DllImport(@"Platform.dll", EntryPoint = "Plat_GetValueStr", Char

action中方法的返回值问题

问题描述 action中方法的返回值问题 action中的方法返回值为NONE是什么意思来? 解决方案 返回的是你对应action配置中的result的name值 解决方案二: 此方法无返回视图

java 接口 接口实现-Java中一个类如何实现多个接口中同名同参返回值不同的方法?

问题描述 Java中一个类如何实现多个接口中同名同参返回值不同的方法? 如:` class A implements Interface1,Interface2{ //这里该怎么写呢? } interface Interface1{ public void method(); } interface Interface2{ public int method(); } 解决方案 class A implements Interface1,Interface2{ //直接写啊 public voi

JS在Chrome浏览器中showModalDialog函数返回值为undefined的解决方法_javascript技巧

本文实例讲述了JS在Chrome浏览器中showModalDialog函数返回值为undefined的解决方法.分享给大家供大家参考,具体如下: 主页面: <script type="text/javascript"> function SelectGroupCust() { var temp = window.showModalDialog("Default2.aspx?xx=" + Date(), "", "dialog

webapi-webAPI帮助界面中如何加返回值的注释

问题描述 webAPI帮助界面中如何加返回值的注释