问题标签 [websphere-7]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 实例化 JPA 管理器 bean 的“正确”方法?
我正在使用 IBM RAD 开发一些 JPA 实体,并从这些实体中开发相应的 JPA Manager Bean。管理器 bean(由 RAD 生成)具有以下成员:
我不确定如何从无状态 EJB (3.0) 正确实例化(或获取对)这个管理器 bean,所以我向管理器 bean 添加了一个构造函数,我可以将EntityManagerFactory
实例传递给它。EntityManagerFactory
我通过使用 `@PersistenceUnit' 注释在 EJB 中获得引用,如下所示:
这似乎相当不必要,我相信必须有一种方法可以告诉容器(在我的情况下为 Websphere 7.0)以某种方式为我“引导”它,以便我立即获得对 JPA 管理器 bean 的引用。是吗?
更新: 看来我还不够详细。对此感到抱歉。
- 涉及三个对象:JPA 实体、JPA 实体管理器和无状态 EJB。
- JPA Entity Manager 类(不是 EJB)由 RAD 创建,并在其上具有方便的方法(命名查询)。它还定义了 member
@PersistenceUnit private EntityManagerFactory emf
。我知道我可以EntityManager
直接使用,但我想使用 MyEntityManager 的便捷方法。 - 我可以通过使用上述注释在无状态 EJB 中获得对 EntityManager 或 EntityManagerFactory 的引用(也像 Bozho 建议的那样)
- 我想在无状态 EJB 中获得对 JPA Entity Manager 的引用。如果我“新建”它(new MyEntityManager()),则 emf 字段为空。解决方法是在 EJB 中声明 @PersistenceUnit 字段,然后将其传递给 JPA 实体管理器并使用它。
- 想一想,也许我可以将 JPA 实体管理器声明为 EJB 并完成它......(尽管这似乎又是不必要的)。我认为有一种方法 PersistenceContext.getJpaManager(MyEntityManager.class) 我可能会丢失。
java - 使用基于 j2ee 表单的身份验证限制谁可以按角色登录
我在我的 web 应用程序中使用基于声明性 J2EE 表单的身份验证,遵循各个地方给出的说明,例如这里:http: //java.dzone.com/articles/understanding-web-security
看来通过 j_security_check 登录允许领域内的所有用户进行身份验证(登录),但不检查他们的角色。授权检查似乎只在用户访问具有安全约束的页面时执行。
因此,在我的应用程序中,用户能够成功登录,因为他们在领域中,但是当他们访问安全页面时,他们会收到一条丑陋的“错误 403:授权失败”消息。
有没有办法将身份验证限制为具有特定角色的用户?或者我是否需要确保用户领域仅包含具有所需角色的用户。
在代码方面,我的 web.xml 中有这个声明:
但它没有说明所需的角色,因此导航到 login.jsp 的任何用户都可以成功登录,如果他们在范围内的话。
然后,当用户在此处访问与 url-pattern 匹配的任何页面时:
那是检查角色的时候。
角色“simpleWebAppUser”是应用程序范围的,我想在让登录成功之前检查用户是否具有此角色。
我在 Windows XP/2000/2003 上使用 WebSphere 7.0,配置为使用 O/S 用户存储库。
shared-libraries - 在 Websphere 应用程序服务器中使用 Jython 添加对企业应用程序的共享库引用
我想以编程方式将共享库添加到我在 websphere 应用程序服务器 (WAS) 中部署的应用程序中。
我听说可以使用jython脚本。
我怎样才能做到这一点?
有人可以举一些实际的例子吗?
websphere - Websphere - AJAX POST 请求错误
我正在使用 ajax 以 JSON 格式将数据从客户端发送到我的服务器,并收到以下错误消息。有没有其他人设法解决了这个问题?,因为似乎很多人都得到了它。
jpa - 必须在 ConnectionDriverName 属性“如何解决它?”中指定 JDBC 驱动程序或数据源类名称。
概述:这是我的第一篇由 Websphere 7 Server & JPA 1.0 & EJB & Derby Database 编写的教程。
首先:我的数据源名称是 EJB3BANK,我的目标数据库是 SHOP。
第二:这是persistence.xml文件
第三: Item实体类的部分代码
第四:这里是业务类CartBean这里是问题的开始
这是错误消息:必须在 ConnectionDriverName 属性中指定 JDBC 驱动程序或数据源类名称。如何解决这个问题?
java - ICEFaces 1.7.2 和 Websphere Application Server 7
我们最近从 WAS6 迁移到 WAS7。我们的一个应用程序在 WAS6 中运行良好,但在 WAS7 中无法运行,并出现以下错误。
给出该错误的代码是
在 WAS6 与 WAS7 contextfactory 中调试应用程序时发现这些信息:com.ibm.faces.context.MultipartFacesContextFactoryImpl - JSF-IBM.jar - WAS7 contextfactory:com.icesoft.faces.context.FacesContextFactoryImpl - icefaces.jar - WAS6
我尝试了一些建议,例如创建共享库并将其与 EAR 相关联,并将类加载器方案从“Parent Last”更改为“Parent First”。
但无论我做什么,在 WAS7 中,我都将 MultipartFacesContextFactoryImpl 作为 contextFactory 的值。
我试图用 1.8 版本的 icefaces.jar 和 icefaces-comps.jar 替换 1.7.2。但还是一样的结果。
请帮忙。如果您需要更多详细信息,请告诉我。
web-services - WebSphere JAX-WS 跨单元认证
我们想要构建一个前端 Web 应用程序,以使用 JAX-WS 使用 WPS 的 HumanTask API。此 Web 应用程序应该能够查询特定用户的当前任务、声明任何其他用户之前未声明的任务、完成任务等。此 Web 应用程序将部署在 WAS 7.0 上,它位于与提供 HumanTask 服务的单元不同的单元上(目前我们正在使用另一个 WPS 实例作为 WAS,但最终它将是一个没有 WPS 功能的简单 WAS)。我们通过以下步骤同步了 LTPA 生成密钥:
- 登录一个单元格
- 转到“安全”>“全球安全”。在“身份验证”下单击“LTPA”
- 在“跨单元单点登录”下
- 建立密码
- 确认密码
- 输入将导出 LTPA 密钥的文件名
- 点击“导出密钥”
- 登出
- 将生成的文件复制到另一台服务器
- 登录到另一个单元格
- 转到“安全”>“全球安全”。在“身份验证”下单击“LTPA”
- 在“跨单元单点登录”下
- 输入以前的密码
- 确认密码
- 使用导出的 LTPA 密钥输入文件名
- 点击“导入密钥”
- 重启服务器
我们使用 GWT 作为概念证明开发了一个简单的 Web 应用程序,它具有一个简单的 UI 和一个使用 HumanTask JAX-WS 服务的 Web 服务客户端。此 Web 应用程序受到 Siteminder 身份验证器的保护(当第一次进入 Web 应用程序时,Siteminder 代理会重定向到请求凭据的 Web 表单)。Web 服务客户端是按照 JAX-WS 标准开发的,没有添加额外的依赖项,我们依赖于 WebSphere JAX-WS 实现(Apache Axis2)。部署后,我们在没有运气的情况下测试了两个场景:
方案 A:
- 默认情况下,WPS 的 HumanTask 服务提供者附加到策略集“BPC Web 服务”,默认策略集绑定和策略集共享被禁用。
- 我们将 HumanTask 服务客户端配置为使用与服务提供者相同的策略集。
登录到自定义 Web 应用程序。当尝试查询当前任务时,我们得到以下异常:
/li>
服务提供商端没有错误消息。
方案 B:
- 更改 WPS 的 HumanTask 服务提供者配置,通过 HTTP GET 启用策略集共享。这种方式服务提供者 WSDL 包含有关策略集的信息。
- 更改服务客户端的策略集配置以使用 HTTP GET 从提供者获取策略集。
登录到自定义 Web 应用程序。当尝试查询当前任务时,我们得到以下异常:
/li>
在到达报告先前异常的点之前,我们在服务客户端日志中看到以下警告:
在服务提供商日志中,我们可以看到以下错误:
并且生成了一组 FFDC,报告了我们在服务客户端遇到的相同异常。
能帮助我们的人会很棒!
jsf - Websphere 7 上的 JSF 1.1
我有一个使用 JSF 1.1 组件开发的应用程序。标签库开发团队不打算支持 JSF 1.2,我们必须在 Webshere 7 上运行应用程序。作为 websphere 7,默认情况下带有 JSF 1.2。最初,我能够部署我的应用程序,但无法访问它。后来,我在某处阅读以删除“预编译 JSP”选项,我这样做了,我能够访问该应用程序。但是我遇到了一些奇怪的事情,我第一次能够登录到应用程序,但是如果我注销然后再次尝试登录,则会出现异常。例外是javax.faces.el.EvaluationException: Exception while invoking expression #{login.authenticate}
,其中 login 是我的 bean 名称,而 authenticate 是方法。此外,我想要一些其他方式,所以我应该选择“预编译 jsp”选项。我在某处阅读了有关共享库的信息,但不知道如何实际实现它。我的war文件包含JSF 1.1的jsf-api.jar和jsf-impl.jar。
oracle - WAS7 和 Oracle DB Kerberos 中的数据源
我在 Oracle DB 中有一个用户,该用户创建为“外部标识”并通过 Kerberos 登录。是否可以配置 WAS7 DataSource 以在此用户下建立连接?
当 Oracle 中的用户创建为“通过密码识别”时没有问题,我只是在 WAS7 JAAS J2C 身份验证数据中创建并将其设置为“组件管理的身份验证别名”。
java - 如何通过使用 Websphere 7 将环境限制为 JDK 1.5 来启动 WAR?
我想知道是否有可能在 Webpshere 7 下发起一场必须使用 JDK 1.5(不符合 JDK 1.6)运行的战争。