在JPQL查询中,我尝试在select子句中使用CONCAT JPQL函数将字符串与整数连接起来,例如:
SELECT CONCAT(c.idClient, ' ', c.name) FROM Clients c;
Run Code Online (Sandbox Code Playgroud)
但结果不是可读的字符串.
我们只能在CONCAT函数中使用String吗?
提前致谢.
如何在另一个EAR中调用EAR中的本地会话Bean,这两个EAR都部署在同一个Glassfish v3域中?
这是结构:
Glassfish v3 Domain1
EAR1
EAR1-EJB.jar
class TestSessionBean <-- @Stateless
common.jar
interface TestSessionLocal <-- @Local
EAR2
EAR2-EJB.jar
class TestSessionBeanClient <-- @Singleton, @LocalBean
common.jar
interface TestSessionLocal <-- @Local
Run Code Online (Sandbox Code Playgroud)
TestSessionBean实现了TestSessionLocal,两个EAR都有common.jar.
我需要使用TestSessionBeanClient中的TestSessionBean.我想利用本地会话bean的性能.
我知道我不能在TestSessionBeanClient中使用简单的@EJB调用,所以我试着像这样查找:
InitialContext ic = new InitialContext();
TestSessionLocal tsl = ic.lookup("java:global/EAR1/EAR1-EJB/TestSessionBean!org.test.TestSessionLocal");
Run Code Online (Sandbox Code Playgroud)
这将抛出一个ClassCastException,因为返回的对象不是TestSessionLocal,而是一个代理类,如:
TestSessionLocal_1389930137
Run Code Online (Sandbox Code Playgroud)
为了能够调用它的方法我必须做反思才能找到它的方法.
请帮忙.
先感谢您.