|
|
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
Доброе время суток. добрые люди никто не подскажет как вызвать метод бина с удаленной машины. Бин задеплоин на WAS. Мне нужно вызвать клиентом метод который находится в бине и описан через Remote Interface. Как это сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2007, 12:37:56 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
Hashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory"); env.put(Context.PROVIDER_URL, "iiop://localhost:2809"); javax.naming.InitialContext initialContext = new javax.naming.InitialContext(env); дальше как обычно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2007, 12:55:14 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
делаю Код: plaintext Не может клас найти, никто не подскажет? javax.naming.NoInitialContextException: Cannot instantiate class: com.ibm.websphere.naming.WsnInitialContextFactory. Root exception is java.lang.ClassNotFoundException: com.ibm.websphere.naming.WsnInitialContextFactory at java.net.URLClassLoader.findClass(URLClassLoader.java:376) at java.lang.ClassLoader.loadClass(ClassLoader.java:570) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:442) at java.lang.ClassLoader.loadClass(ClassLoader.java:502) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:260) at com.sun.naming.internal.VersionHelper12.loadClass(VersionHelper12.java:60) at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:662) at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:257) at javax.naming.InitialContext.init(InitialContext.java:233) at javax.naming.InitialContext.<init>(InitialContext.java:209) at ru.systematic.Client.getMethod(Client.java:28) at ru.systematic.Client.main(Client.java:38) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2007, 13:35:03 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
Отличный, понятный стек трейс. Что может быть непонятного в отсутствии имплементации? Подложите вебсферовский джарник (какой - хз. ищите в документации). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2007, 13:44:59 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
А как теперь instance бина поднять и выполнить требуемый метод ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2007, 17:34:40 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
Похоже приложение не видит классы Веб Сферы для доступа к серверу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2007, 18:25:26 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
Kudinov AntonHashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory"); env.put(Context.PROVIDER_URL, "iiop://localhost:2809"); javax.naming.InitialContext initialContext = new javax.naming.InitialContext(env); дальше как обычно Но для начала не мешало бы конечно залогинится LoginContext loginContext = new LoginContext("other", new UsernamePasswordHandler(userName, password.toCharArray())); loginContext.login(); И настроить некоторые мелочи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2007, 20:03:10 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
unregestered Kudinov AntonHashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory"); env.put(Context.PROVIDER_URL, "iiop://localhost:2809"); javax.naming.InitialContext initialContext = new javax.naming.InitialContext(env); дальше как обычно Но для начала не мешало бы конечно залогинится LoginContext loginContext = new LoginContext("other", new UsernamePasswordHandler(userName, password.toCharArray())); loginContext.login(); И настроить некоторые мелочи А что именно настроить надо, тока начал сферу копать да и J2EE, авторизация отключеа нужно ли логинится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2007, 11:09:10 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
Лениво выдирать куски. Вот как это делается для Bea Weblogic. Уверен, что и для WebSphere всё будет точно так же. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. После создания такого класса следует вызвать метод create, а потом уже вызывать все заимплементированные методы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2007, 11:27:15 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. Да а поподробнее про класс UsernamePasswordHandler??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2007, 11:29:01 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
raidanЛениво выдирать куски. Вот как это делается для Bea Weblogic. Уверен, что и для WebSphere всё будет точно так же. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. После создания такого класса следует вызвать метод create, а потом уже вызывать все заимплементированные методы. Это конечно все хорошо но вопрос состоит в том что Bean крутится на сервере отдельном. А клиент находится на удаленной машине. Мне нужно каким нибудь образом обратится к Бину поднять его инстанс и вызвать требуемы ей get или set методы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2007, 11:45:58 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
anton_evane Это конечно все хорошо но вопрос состоит в том что Bean крутится на сервере отдельном. А клиент находится на удаленной машине. Мне нужно каким нибудь образом обратится к Бину поднять его инстанс и вызвать требуемы ей get или set методы. А вы внимательно изучили код? Или не утруждали себя этим, скажите честно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2007, 11:55:53 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
anton_evane Вы представляете себе, как работают механизмы EJB? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2007, 11:56:35 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
Напоследок скажу, что переменная url (передаваемая на вход) выглядит как t3://192.168.15.998:7001 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2007, 11:57:42 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
Я изучаю код, это мой напарник решил поспрашивать извиняюсь за него. Просто в двоем все это хозяйство топик то один вот он и пишет в него что не понимает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2007, 12:00:16 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
raidanНапоследок скажу, что переменная url (передаваемая на вход) выглядит как t3://192.168.15.998:7001 Спасибо за код многое стало понятно, щас попробуем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2007, 12:03:51 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
anton_evane Спасибо за код многое стало понятно, щас попробуем Попробуйте. Не забудьте только поменять CONTEXT_FACTORY :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2007, 12:07:30 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
поменял ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2007, 12:17:21 |
|
||
|
Удаленный вызов Session EJB (WebSphere)
|
|||
|---|---|---|---|
|
#18+
anton_evane unregestered Kudinov AntonHashtable env = new Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory"); env.put(Context.PROVIDER_URL, "iiop://localhost:2809"); javax.naming.InitialContext initialContext = new javax.naming.InitialContext(env); дальше как обычно Но для начала не мешало бы конечно залогинится LoginContext loginContext = new LoginContext("other", new UsernamePasswordHandler(userName, password.toCharArray())); loginContext.login(); И настроить некоторые мелочи А что именно настроить надо, тока начал сферу копать да и J2EE, авторизация отключеа нужно ли логинится. Просто не полностью ясна вся ситуация. Удалённый вызов ЕЖБ разный бывает: одно дело из веб-компонента обращаться. Там за вас контейнер логинится. Другое дело из станд-алоне приложения. Кроме того если вызов идёт через весь земной шар, то вам возможно придётся настроить безопасное соединение. UsernamePasswordHandler - это ЖБосовский класс в ВебЛоджике придётся что-то другое использовать (с ВЛ не работал). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2007, 17:39:36 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34340477&tid=2146606]: |
0ms |
get settings: |
12ms |
get forum list: |
18ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
45ms |
get topic data: |
15ms |
get forum data: |
4ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
| others: | 294ms |
| total: | 463ms |

| 0 / 0 |
