在rtx的论坛可以看到很多类似下面的论调:
“您好,所有用我们的api开发的jsp或java程序都必须放在SDK的安装包的java目录下,与RTXSvrApi.java同一目录(注意不能单独 copy出RTXSvrApi.java文件)。”简直让人吐血不止啊,幸好实际情形不是这样(也不可能是这样,要这样tx的程序员都找块豆腐撞死算了,否则也会给其他的java开发者口水淹死:-))。实际情形是:可以单独copy出RTXSvrApi.java,只是不能改掉RTXSvrApi.java的包名。
整合步骤(在3.61版本下通过):
1、将Crypt.dll、RTXParser.dll、SDKAPI.dll、SDKAPIC.dll、SDKAPIJava.dll复制到%windir%\system32目录下面;
2、定义一个简单的servlet:RtxServlet,覆盖doGet方法,在服务器端获得sessionkey,并传给客户端:
protected void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException
{
RTXSvrApi RtxsvrapiObj=new RTXSvrApi();
if(RtxsvrapiObj.Init())
{
String userID=new OperatorAdminObj().getCurrentUserId(request);
String sessionKey=RtxsvrapiObj.GetSessionKey(userID);
request.setAttribute("loginUser",userID);
request.setAttribute("rtxSessionKey",sessionKey);
RtxsvrapiObj.UnInit();
}
getServletContext().getRequestDispatcher("/rtx/rtx.jsp").forward(
request,response);
}
3、在rtx.jsp中,在客户端调用activex控件,自动登录rtx客户端。
<%@ page contentType="text/html; charset=utf-8" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>rtx</title>
<script type="text/javascript" src="javascript/global.js"></script>
<link rel="stylesheet" type="text/css" href="css/style.css">
<script language="vbscript">
Sub window_onload
Set objProp = RTXAX.GetObject("Property")
objProp.Value("RTXUsername") = "${loginUser}"
objProp.Value("LoginSessionKey") = "${rtxSessionKey}"
objProp.Value("ServerAddress") = "127.0.0.1"
objProp.Value("ServerPort") = 8000
RTXAX.Call 2, objProp
window.close
End Sub
</script>
</head>
<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" >
<OBJECT id=RTXAX
data=data:application/x-oleobject;base64,fajuXg4WLUqEJ7bDM/7aTQADAAAaAAAAGgAAAA==
classid=clsid:5EEEA87D-160E-4A2D-8427-B6C333FEDA4D VIEWASTEXT>
</OBJECT>
</body>
</html>
4、在你的系统登录验证完毕后,通过打开新窗口调用RtxServlet,
window.open("RtxServlet","","")
就可以了。
rtx这种通过SessionKey的方式来实现其他系统与其的集成,对程序员来说是很方便的,但有其安全性问题:系统管理员可以很容易在服务器端获得SessionKey,再冒充其他人登录。不过这个世界上从无攻不破的堡垒,没有最好,只有更好。
分享到:
相关推荐
RTX简介、RTX体系架构、企业应用整合分析、整合应用场景、用户数据同步、单点登录、反向登录、待办提示、状态感知、发送短信。
RTX 8.1 与 RTX 64 是两种实时操作系统(RTOS)的版本,它们主要用于将标准的Windows操作系统转换成实时系统,以满足对时间敏感和高精度任务的需求。RTX64 3.6 版本是64位的,而RTX 8.1 则代表了该技术的进一步发展...
OA与RTX的集成是指将OA系统与RTX系统集成在一起,以实现更好的办公自动化和流程管理。RTX是基于Web的办公自动化平台,提供了强大的开发和集成能力,而OA系统是office自动化系统,两者集成可以实现更加灵活和高效的...
详细讲解keil自带的操作系统RTX,里面有很多例子,帮助想了解运用RTX系统的程序员快速掌握
通过这18个案例,开发者可以了解到如何在STM32微控制器上集成和优化RTX5,从而实现高效的实时系统设计。每个案例的PDF教程会详细解释代码实现,解释如何在Keil MDK环境下配置工程、编写C代码以及调试技巧。 "Hitex....
安装后,开发者可以开始创建新的实时应用程序,利用Windows RTX的强大功能,实现高效的实时处理和系统响应。 总之,RTX 3.6 SDK是一个针对Windows平台的实时操作系统开发工具,它提供了必要的工具和库,帮助开发者...
3. **实时性能**:RTX优化了系统调用和中断处理,确保了在Windows上实现硬实时性能,这对于需要严格时间约束的系统至关重要。 4. **同步与通信机制**:RTX提供了信号量、邮箱、消息队列等同步和通信机制,使得不同...
它与RTX无缝全面整合,用户登录腾讯通RTX客户端,点击办公协同插件相应功能按钮,就可以新建和处理各种办公、文件、邮件、信息、报告、流程等工作,而不需要通过OA的再次验证,用户操作更便捷。各种待办和待处理的...
本文将深入探讨RTX与OA系统单点登录的实现原理与具体步骤,以及如何确保用户信息的一致性与安全性。 #### 用户同步与单点登录的关系 在讨论单点登录之前,需先理解用户同步的概念。用户同步确保了RTX与OA系统间...
"实时系统RTX官方文档中文翻译" 实时系统RTX官方文档中文翻译是关于RTX基本特点、进程线程、中断、架构、内存管理、API等方面的详细介绍。RTX是一个实时操作系统,旨在提供 硬实时(hard real-time)功能,满足实时...
《RL-ARM RTX嵌入式操作系统源代码详解——基于4.20版本》 RL-ARM是一款由Keil公司开发的嵌入式实时操作系统(RTOS),其内核RTX是专门为微控制器设计的轻量级实时操作系统。本文将深入探讨RTX 4.20版本的源代码...
在本研究中,数据采集系统采用RTX51提供的接口文件与函数实现了并行任务和顺序任务的机制。具体来说,每个任务都有明确的任务入口点,并通过调用相应的库函数来管理任务的执行流程。例如,数据采集任务一旦完成,会...
本文将深入探讨RTX在STM32上的应用以及源代码解析,这对于理解RTOS的工作原理和优化嵌入式系统至关重要。 1. CMSIS与RTX的关系 CMSIS(Cortex Microcontroller Software Interface Standard)是ARM公司推出的一套...
西门子自动化系统WinAC RTX是西门子推出的一种软PLC(可编程逻辑控制器),运行于Windows操作系统之上,提供了灵活的自动化解决方案。本文档旨在介绍WinAC RTX组态下载的几种方式,帮助自动化工程师更好地进行系统...
标题中的“RTX32与64位性能对比”指的是IntervalZero RTX64与RTX32两个版本之间的性能比较。RTX是专为将Windows操作系统转变为实时操作系统(RTOS)设计的软件,它允许系统在高精度的时间间隔内执行任务,这对于需要...
RTX51是一款专为8051系列嵌入式系统设计的轻量级实时操作系统,旨在简化复杂、时间敏感的软件开发。该系统提供两种版本:RTX51 Full和RTX51 Tiny。RTX51 Full是标准版,支持循环(Round-Robin)任务调度和四等级别的...
光纤卡是RTX系统中的关键硬件组件,它利用光纤通道技术来实现高速、高带宽的数据传输。光纤通信具有数据传输速率高、传输距离远、抗干扰能力强等优点,特别适合于对实时性能要求严格的场景。 "安晓风第一学期末RTX...
RTX作为一款高性能的实时操作系统,在Windows平台上实现了真正的实时能力,通过改进内存管理、中断处理机制和任务调度策略等方面,显著提升了系统的实时性和可预测性。与VxWorks、C/OS-II、RT-Linux和QNX等其他流行...
使用RTX51实时操作系统开发嵌入式系统,开发者需要了解并掌握操作系统的基本概念,如任务调度、同步机制等,并结合实际应用需求,合理划分任务,配置任务优先级,以实现高效且可靠的系统设计。此外,调试工具和文档...