- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在 Glassfish v2 中,我通过在 ORB 节点下的管理控制台中启用“IIOP 客户端身份验证”复选框来保护我的 JNDI 查找。
然后在我的独立客户端中执行“ProgrammaticLogin”,然后允许我执行 JNDI 查找。
但是,在 Glassfish v3 中,如果想在同一设置中执行任何 JNDI 查找,我会收到此错误:
18.08.2010 14:31:10 com.sun.enterprise.transaction.JavaEETransactionManagerSimplified
initDelegates INFO: Using
com.sun.enterprise.transaction.jts.JavaEETransactionManagerJTSDelegate
as the delegate
org.omg.CORBA.NO_PERMISSION:
----------BEGIN server-side stack trace----------
org.omg.CORBA.NO_PERMISSION:
vmcid: 0x0
minor code: 0
completed: No
我很确定“ProgrammaticLogin”一般都能正常工作,因为它允许我在我的安全 EJB 上执行远程方法调用(使用 @RolesAllowed
但如果 IIOP Client Auth 已关闭)。
我登录的用户是我为"file"领域创建的简单用户。
任何想法,为什么 ProgrammticLogin 无法在 Glassfish v3 中工作以授权 JNDI 查找?
或者从独立客户端使用 ORB 进行身份验证的正确方法是什么?为了这个目的?
最佳答案
您确定 appserv-rt.jar 在您的类路径中吗?它是每个 glassfish3 安装的一部分,例如在我的安装中,它位于此处:
/opt/glassfish3/glassfish/lib
这很重要。它包含一些客户端 java 类,特别是:AppclientIIOPInterceptorFactory。
这些向 ORB 添加一个 SecClientRequestInterceptor,它关心将用户名和密码添加到发送到服务器的 GIOP 请求中。
我花了大约两天时间扫描了 glassfish 的源代码,并用 wireshark 嗅探了电线上的 corba 包,直到我找到了这个。
可以在此处找到如何保护 bean 和编写真正的 Java EE 客户端的示例: http://download.oracle.com/docs/cd/E19798-01/821-1841/bnbzk/index.html
希望对你有帮助 曼纽尔
关于java - Glassfish v3 中的 IIOP 客户端身份验证和 ProgrammaticLogin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3519676/
我正在尝试获取 Oracle RMI-IIOP example工作,但我在 Netbeans 中执行此操作时遇到问题。 我的代码如下: 界面 import java.rmi.Remote; impor
假设我想将以下 RMI-IIOP 导出对象的远程引用传递给接收者(这是另一个远程对象): public interface MyInterface extends Remote { publi
我知道 JRMP 会为每个调用请求打开一个新套接字。此外,IIOP 可以为多个请求共享一个打开的套接字。 如维基百科所述: Usage of the term RMI may denote solel
为什么我无法启动 orbd 服务 CORBA IIOP? C:>启动 orbd -ORBInitialPort 1050 C:>orbd -ORBInitialPort 1050 由于内部异常,无法启
我有一个 Java 版本的 IIOP 客户端,但我遇到了各种连接问题。我想用 python 构建客户端,但还没有找到任何可以让我这样做的东西。有这样的事吗? 最佳答案 omniORB支持Python。
我已经在 Windows Server 2012 上成功安装了 omniORB。我有两个使用 omniidl 编译器编译的 IDL 文件,现在有两个 IDL 文件的头文件和源文件。 你如何着手编写一个
我有一个使用 IIOP 协议(protocol)的 CORBA 应用程序,我正在使用 JDK 6 的 Java IDL 组件,这是另一个 ORB 实现。 用Java语言实现客户端和服务器。 在 JDK
我知道 RMI 无法在 LAN 外部建立连接。我想知道 RMI IIOP 是否可以通过互联网连接服务器客户端。是否可以 ?如果是,可能的解决方案是什么? 最佳答案 RMI 在互联网上运行良好,它是基于
我正在将一个在 JBoss 6.1 上运行的已有 10 年历史的 EJB2 应用程序从 JNP 协议(protocol)迁移到 CORBA RMI/IIOP,因为我想使用 ORB PortableIn
在 Glassfish v2 中,我通过在 ORB 节点下的管理控制台中启用“IIOP 客户端身份验证”复选框来保护我的 JNDI 查找。 然后在我的独立客户端中执行“ProgrammaticLogi
我正在测试 JAAS Subject 的传播用custom Principal从运行在原始 Java 运行时上的独立 EJB 客户端到 JavaEE 服务器。我同时针对 JBoss 和 WebSphe
我正在开发一个应用程序,它使用消息驱动 bean 接收消息并将数据保存到数据库中。当尝试在 glassfish 上部署它时,我收到以下错误: java.lang.RuntimeException: I
我们正在迁移到 VisiBroker 7.0。在我们的客户端应用程序中,我们开始使用作为 Java 存档 vbjclientorb.jar 文件提供的 VBJ 客户端运行时。 AIX 的vbjclie
我开始在 eclipse 中使用 WAS Liberty 8.5,当我尝试部署应用程序时出现此错误。 Caused by: java.lang.NoClassDefFoundError: com/ib
我是一名优秀的程序员,十分优秀!