|
|
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Всем добрый день! Научите, плиз. В Java очень плохо разбираюсь, могу спороть хню по ходу обсуждения :) Итак... JDK 1.6, взято с сайта Oracle. Старая версия для того, чтобы быть поближе к версии компилятора java, который прибит гвоздями к Oracle 11.2.0.4. Утилитой wsimport сгенерировал набор прокси-классов по указанному wsdl. Сделал небольшой примерчик нижеуказанного вида, который чудно компилируется javac из JDK той же версии и так же чудно запускается: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Загружаю эти классы в Oracle (сначала интерфейсы, потом реализацию) - все создается без ошибок. Но при попытке использования из Oracle (код см. ниже) в первый раз выдается ошибка ORA-29532: Java call terminated by uncaught Java exception: java.lang.ExceptionInInitializerError а при последующих вызовах другая ошибка: ORA-29532: Java call terminated by uncaught Java exception: java.lang.NoClassDefFoundError. Вот код java-класса на оракле: CREATE OR REPLACE AND RESOLVE JAVA SOURCE NAMED "Test1" as import primbank.services.KissGKH.*; public class Test1 { public static void test1_proc() { HousingService x = new HousingService(); } } / Вдруг тут есть люди, кто и с ораклом работал, и с джавой дружит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 08:58 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
ВадиманORA-29532: Java call terminated by uncaught Java exception: java.lang.ExceptionInInitializerError Хорошо бы полный stacktrace увидеть. Внутри ExceptionInInitializerError есть другое исключение, которое указывает на фактическую проблему. ВадиманORA-29532: Java call terminated by uncaught Java exception: java.lang.NoClassDefFoundError. Да, это следствие первой ошибки. Так как исключение было выброшено в момент инициализации класса, то класс считается отсутствующим. Поэтому остальные ошибки такие. ВадиманВдруг тут есть люди, кто и с ораклом работал, и с джавой дружит? Есть. Надо ждать тех кто с ораклом возится. Скорее всего в той версии Java, которая в Oracle нет каких-то внутренних классов, которые используются в коде, сгенеренном JDK. А в самом Oracle нигде нет wsimport? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 09:05 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
И вот ещё что: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Так будет видно всё. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 09:09 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Есть. Надо ждать тех кто с ораклом возится. Скорее всего в той версии Java, которая в Oracle нет каких-то внутренних классов, которые используются в коде, сгенеренном JDK. А в самом Oracle нигде нет wsimport? Посмотреть какие java объекты можно(при наличии прав типа Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Насколько я знаю wsimport нету... Обычно оракле интегрируют с WS при помощи его pl/sql утилиты utl_http И отсекают из response soap контекст... Поищите в гугле, на тему должны быть примеры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 09:22 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Получил stack trace: Throwable.getStackTracesun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java) sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java) java.lang.reflect.Constructor.newInstance(Constructor.java) java.lang.reflect.Proxy.newInstance(Proxy.java) java.lang.reflect.Proxy.newProxyInstance(Proxy.java) com.sun.xml.internal.bind.v2.model.annotation.LocatableAnnotation.create(LocatableAnnotation.java) com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.getAllFieldAnnotations(RuntimeInlineAnnotationReader.java:60) com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.getAllFieldAnnotations(RuntimeInlineAnnotationReader.java:42) com.sun.xml.internal.bind.v2.model.impl.ClassInfoImpl.findFieldProperties(ClassInfoImpl.java:360) com.sun.xml.internal.bind.v2.model.impl.ClassInfoImpl.getProperties(ClassInfoImpl.java:290) com.sun.xml.internal.bind.v2.model.impl.RuntimeClassInfoImpl.getProperties(RuntimeClassInfoImpl.java:165) com.sun.xml.internal.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:232) com.sun.xml.internal.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:89) com.sun.xml.internal.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:70) com.sun.xml.internal.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:198) com.sun.xml.internal.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:84) com.sun.xml.internal.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:70) com.sun.xml.internal.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:304) com.sun.xml.internal.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:319) com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:430) com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:277) com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl$JAXBContextBuilder.build(JAXBContextImpl.java:1100) com.sun.xml.internal.bind.v2.ContextFactory.createContext(ContextFactory.java:143) com.sun.xml.internal.bind.v2.ContextFactory.createContext(ContextFactory.java:110) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java) javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:202) javax.xml.bind.ContextFinder.find(ContextFinder.java:376) javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:574) javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:522) com.sun.xml.internal.ws.spi.ProviderImpl$2.run(ProviderImpl.java:209) com.sun.xml.internal.ws.spi.ProviderImpl$2.run(ProviderImpl.java:206) java.security.AccessController.doPrivileged(Native Method) com.sun.xml.internal.ws.spi.ProviderImpl.getEPRJaxbContext(ProviderImpl.java:206) com.sun.xml.internal.ws.spi.ProviderImpl.<clinit>(ProviderImpl.java:77) java.lang.Class.forName0(Native Method) java.lang.Class.forName(Class.java) javax.xml.ws.spi.FactoryFinder.safeLoadClass(FactoryFinder.java:154) javax.xml.ws.spi.FactoryFinder.newInstance(FactoryFinder.java:30) javax.xml.ws.spi.FactoryFinder.find(FactoryFinder.java:128) javax.xml.ws.spi.Provider.provider(Provider.java:83) javax.xml.ws.Service.<init>(Service.java:56) primbank.services.KissGKH.HousingService.<init>(HousingService:39) Test1.test1_proc(Test1:7) Как там может не хватать каких-то внутренних библиотек, если компиляция проходит нормально? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 09:35 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
irbis_alЕсть. Надо ждать тех кто с ораклом возится. Скорее всего в той версии Java, которая в Oracle нет каких-то внутренних классов, которые используются в коде, сгенеренном JDK. А в самом Oracle нигде нет wsimport? Посмотреть какие java объекты можно(при наличии прав типа Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Насколько я знаю wsimport нету... Обычно оракле интегрируют с WS при помощи его pl/sql утилиты utl_http И отсекают из response soap контекст... Поищите в гугле, на тему должны быть примеры. Я бы не хотел опускаться до уровня XML, хотелось бы, покуда возможно, держаться на декларативном уровне. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 09:40 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Утилиты wsimport в $JAVA_HOME на сервере Oracle нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 09:41 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
ВадиманПолучил stack trace: И всё самое интересное выкинул. Рукалицо. ВадиманКак там может не хватать каких-то внутренних библиотек, если компиляция проходит нормально? Компиляция вашего кода? Или вы сгенерированный код тоже перекомпилируете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 09:42 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Вадиман, А там точно в Oracle 11g Java 6? В 11.1, вроде пишут про совместимость с JDK 1.5. В Release 2 разве поменяли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 09:46 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
BlazkowiczВадиман, А там точно в Oracle 11g Java 6? В 11.1, вроде пишут про совместимость с JDK 1.5. В Release 2 разве поменяли? Хотя, судя по слову "internal" в именах пакетов это таки Java 6 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 09:47 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
BlazkowiczВадиманПолучил stack trace: И всё самое интересное выкинул. Рукалицо. Благодарствую, товарищ :) Переделал на printStackTrace(), через StreamWriter получил вывод и в итоге имею конкретный solution, зашитый в сообщение об ошибке: еще про ошибкуCaused by: java.security.AccessControlException: the Permission (java.lang.RuntimePermission accessClassInPackage.com.sun.xml.internal.bind.v2.model.annotation) has not been granted to ABR. The PL/SQL to grant this is dbms_java.grant_permission( 'ABR', 'SYS:java.lang.RuntimePermission', 'accessClassInPackage.com.sun.xml.internal.bind.v2.model.annotation', '' ) at java.security.AccessControlContext.checkPermission(AccessControlContext.java) at java.security.AccessController.checkPermission(AccessController.java) at java.lang.SecurityManager.checkPermission(SecurityManager.java) at oracle.aurora.rdbms.SecurityManagerImpl.checkPermission(SecurityManagerImpl.java) at java.lang.SecurityManager.checkPackageAccess(SecurityManager.java) at java.lang.Class.checkMemberAccess(Class.java) at java.lang.Class.getMethod(Class.java) at com.sun.proxy.$Proxy8.<clinit>(Unknown Source) ... 47 more BlazkowiczВадиманКак там может не хватать каких-то внутренних библиотек, если компиляция проходит нормально? Компиляция вашего кода? Или вы сгенерированный код тоже перекомпилируете? Я говорил про то, что команда SQL "CREATE AND COMPILE JAVA SOURCE NAMED "..." AS <java source>" происходит нормально, чего не было бы, если бы чего-то не хватало. Сейчас попробую рекомендацию "by printStackTrace() (c)" :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 09:50 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
На финише нас пристрелил снайпер :) Что может означать нижеуказанная ошибка? ?java.lang.ExceptionInInitializerError at com.sun.xml.internal.bind.api.TypeReference.<init>(TypeReference.java:76) at com.sun.xml.internal.ws.model.RuntimeModeler.processDocWrappedMethod(RuntimeModeler.java) at com.sun.xml.internal.ws.model.RuntimeModeler.processMethod(RuntimeModeler.java:612) at com.sun.xml.internal.ws.model.RuntimeModeler.processClass(RuntimeModeler.java:401) at com.sun.xml.internal.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:240) at com.sun.xml.internal.ws.client.WSServiceDelegate.createSEIPortInfo(WSServiceDelegate.java:687) at com.sun.xml.internal.ws.client.WSServiceDelegate.addSEI(WSServiceDelegate.java:675) at com.sun.xml.internal.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:330) at com.sun.xml.internal.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:313) at com.sun.xml.internal.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:295) at javax.xml.ws.Service.getPort(Service.java:92) at primbank.services.KissGKH.HousingService.getHousingServiceEndpoint(HousingService:49) at Test1.test1_proc(Test1:9) Caused by: java.util.MissingResourceException: Can't find bundle for base name com.sun.xml.internal.bind.api.Messages, locale en_US at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1427) at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1250) at java.util.ResourceBundle.getBundle(ResourceBundle.java:705) at com.sun.xml.internal.bind.api.Messages.<clinit>(Messages.java:43) at com.sun.xml.internal.bind.api.TypeReference.<init>(TypeReference.java:74) ... 12 more Caused by: java.lang.ClassCastException: com.sun.xml.internal.bind.api.Messages cannot be cast to ResourceBundle at java.util.ResourceBundle$Control.newBundle(ResourceBundle.java) at java.util.ResourceBundle.loadBundle(ResourceBundle.java:1364) at java.util.ResourceBundle.findBundle(ResourceBundle.java:1328) at java.util.ResourceBundle.findBundle(ResourceBundle.java:1282) at java.util.ResourceBundle.findBundle(ResourceBundle.java:1282) at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1224) ... 15 more Как я могу повлиять на это: java.lang.ClassCastException: com.sun.xml.internal.bind.api.Messages cannot be cast to ResourceBundle? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 10:06 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Вадиман, Разные версии JAXB в той JDK, которая сгенерила код и той, которая в Oracle. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 10:09 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
ВадиманКак я могу повлиять на это: java.lang.ClassCastException: com.sun.xml.internal.bind.api.Messages cannot be cast to ResourceBundle? А вы либы никакие в Oracle 11g не подкладывали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 10:10 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
BlazkowiczВадиманКак я могу повлиять на это: java.lang.ClassCastException: com.sun.xml.internal.bind.api.Messages cannot be cast to ResourceBundle? А вы либы никакие в Oracle 11g не подкладывали? Нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 10:13 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
BlazkowiczВадиман, Разные версии JAXB в той JDK, которая сгенерила код и той, которая в Oracle. Т.е. в исходных текстах прокси-классов есть какие-то ссылки на левые типы, которые Oracle в рантайме не переваривает? Правильно ли я понимаю, что проблема "всего-то" в ручном копании в сгенерированном коде и подмене ненужного на нужное? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 10:17 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
ВадиманТ.е. в исходных текстах прокси-классов есть какие-то ссылки на левые типы, которые Oracle в рантайме не переваривает? Правильно ли я понимаю, что проблема "всего-то" в ручном копании в сгенерированном коде и подмене ненужного на нужное? Я не уверен. Больше похоже на то что кто-то jaxb-api.jar или jaxb-impl.jar в Oracle 11g таки засунул. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 10:23 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
BlazkowiczВадиманТ.е. в исходных текстах прокси-классов есть какие-то ссылки на левые типы, которые Oracle в рантайме не переваривает? Правильно ли я понимаю, что проблема "всего-то" в ручном копании в сгенерированном коде и подмене ненужного на нужное? Я не уверен. Больше похоже на то что кто-то jaxb-api.jar или jaxb-impl.jar в Oracle 11g таки засунул. Имеется в виду "их подменили" или "их не было и их добавили"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 10:26 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Администратор БД уверенно говорит "нет" на вопрос "менялись ли когда-нибудь штатные файлы в каталоге, куда oracle установлен?" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 10:27 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
ВадиманИмеется в виду "их подменили" или "их не было и их добавили"? Реализация JAXB уже есть в каком-нибудь rt.jar, но кто-то в либы добавил ещё jaxb*.jar, с версией по-новее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 10:28 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
ВадиманАдминистратор БД уверенно говорит "нет" на вопрос "менялись ли когда-нибудь штатные файлы в каталоге, куда oracle установлен?" Ну, тогда я фиг его знает. Если бы это была обычная Java, я бы подцепился удаленной отладкой, и в строке исключения java.util.ResourceBundle$Control.newBundle(ResourceBundle.java) Посмотрел был откуда Messages и ResourceBundle загружены. Ну, ResourceBundle, очевидно из бутстрапа, а вот откуда com.sun.xml.internal.bind.api.Messages нарисовался, хорошо бы глянуть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 10:30 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
Т.е. я в попытках уравняться с более старой версией библиотек JAVA на Oracle, теперь (из-за того, что кто-то Blazkowicz...кто-то в либы добавил ещё jaxb*.jar, с версией по-новее... ) оказался позади? Имеет смысл сгенерировать заново мои proxy classes утилитой wsimport из свежего JDK? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 10:32 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
ВадиманИмеет смысл сгенерировать заново мои proxy classes утилитой wsimport из свежего JDK? Я могу ошибаться. Но по-моему ошибка к сгенерированному коду отношения не имеет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 10:34 |
|
||
|
Прошу помощи в коннекте к сервису WCF из оракловой Java
|
|||
|---|---|---|---|
|
#18+
BlazkowiczВадиманИмеет смысл сгенерировать заново мои proxy classes утилитой wsimport из свежего JDK? Я могу ошибаться. Но по-моему ошибка к сгенерированному коду отношения не имеет. У меня такое наблюдалось,когда в classpath были одни и те же классы разных версий. Вот и возникала classcastexecption ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 11:25 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39241206&tid=2124032]: |
0ms |
get settings: |
11ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
82ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
81ms |
get tp. blocked users: |
2ms |
| others: | 256ms |
| total: | 475ms |

| 0 / 0 |
