|
|
|
Spring, Session Bean
|
|||
|---|---|---|---|
|
#18+
Помогите разобраться... Приложение на Spring(SpringSecurity ...) Хочу использовать Session Bean когда пользователь залогинивается. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Посмотрел как это делается: Making a Spring bean session scoped Теперь пробую настроить у себя: AppConfig.java Код: java 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. После добавления @Bean public CustomScopeConfigurer customScope () в AppConfig.java Получаю ERROR при старте TomCat: Failed to instantiate [javax.sql.DataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.NullPointerException Хотя в AppConfig.java есть public DataSource dataSource() Как можно исправить ситуацию? В чем я ошибся? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 14:45 |
|
||
|
Spring, Session Bean
|
|||
|---|---|---|---|
|
#18+
wvetal, может он не может найти одно из этих env.getProperty("jdbc.driverClassName") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 14:49 |
|
||
|
Spring, Session Bean
|
|||
|---|---|---|---|
|
#18+
Session Bean это EJB, а в Spring Session это всего лишь scope для bean. Поэтому называется session scoped bean. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 14:53 |
|
||
|
Spring, Session Bean
|
|||
|---|---|---|---|
|
#18+
rema174wvetal, может он не может найти одно из этих env.getProperty("jdbc.driverClassName") Думаю, не в этом причина - потому-что до добавления CustomScopeConfigurer DataSource работал и данные с базы получал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 14:55 |
|
||
|
Spring, Session Bean
|
|||
|---|---|---|---|
|
#18+
BlazkowiczSession Bean это EJB, а в Spring Session это всего лишь scope для bean. Поэтому называется session scoped bean. Хорошо, тогда как мне правильно использовать session scoped bean? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 14:57 |
|
||
|
Spring, Session Bean
|
|||
|---|---|---|---|
|
#18+
wvetal, Что такое env и почему он не null? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 15:12 |
|
||
|
Spring, Session Bean
|
|||
|---|---|---|---|
|
#18+
Blazkowiczwvetal, Что такое env и почему он не null? Код: java 1. 2. application.properties: jdbc.driverClassName=oracle.jdbc.OracleDriver jdbc.url=jdbc:oracle:thin:@10.0.0.10:1521:xe jdbc.username=user jdbc.password=password ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 15:18 |
|
||
|
Spring, Session Bean
|
|||
|---|---|---|---|
|
#18+
Полный конфиг выглядит так: Код: java 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. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. Может так проблема станет виднее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 15:30 |
|
||
|
Spring, Session Bean
|
|||
|---|---|---|---|
|
#18+
wvetalМожет так проблема станет виднее? Проблема станет виднее, если посмотреть на stacktrace и определить в какой строке возник NPE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 15:32 |
|
||
|
Spring, Session Bean
|
|||
|---|---|---|---|
|
#18+
rema174wvetal, может он не может найти одно из этих env.getProperty("jdbc.driverClassName")Blazkowiczwvetal, Что такое env и почему он не null?BlazkowiczПроблема станет виднее, если посмотреть на stacktrace и определить в какой строке возник NPE.Да, вы оказались правы, проблема в этом. Когда ввел параметры руками: Код: java 1. 2. TomCat запускается без ошибок. Но, тогда вопрос - раньше же env.getProperty("jdbc.driverClassName") работал. Почему добавление CustomScopeConfigurer поламало env? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 16:16 |
|
||
|
Spring, Session Bean
|
|||
|---|---|---|---|
|
#18+
wvetalПочему добавление CustomScopeConfigurer поламало env? Надо лог смотреть. Возможно у бинов на столько разный scope что инъекция перестала работать. Возможно, есть какие-то особенность инъекции для своего Scope. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 16:29 |
|
||
|
Spring, Session Bean
|
|||
|---|---|---|---|
|
#18+
Проверяю дальше как работает мой session scoped bean. Идея такая: В session scoped bean (appParams) я хочу хранить некоторые данные пользователя, которые инициализируются(загружаются из базы) когда пользователь входит в систему. Код: java 1. 2. 3. 4. Дальше я хочу использовать эти данные. И мне нужен этот session scoped bean, чтоб каждый раз не лезть в базу. Теперь, когда срабатывает метод на RestController-е, и я пытаюсь извлечь то, что инициализировал при входе в систему - получаю 0, вместо ожидаемого значения. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. Почему на контроллере возвращается 0? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 18:15 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=104&tid=2124373]: |
0ms |
get settings: |
11ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
45ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 250ms |
| total: | 409ms |

| 0 / 0 |
