Разработка клиента веб-сервиса на JDK 1.6, который должен быть совместим с JDK 1.5.03.

Я пытаюсь запустить клиент веб-сервиса на JDK 1.5, и он дает мне много ошибок, таких как исключение classnotfound, nosuchmethod... Можно ли добавить некоторые библиотеки, такие как jax-ws, axis... и запустить его под JDK 1.5?

Каков наилучший подход? У меня есть NetBeans 6.9.1 на JDK 1.6, создан проект, совместимый с JDK 1.5. На моей машине работает, а на другой с 1.5 нет.


person Gregor    schedule 21.01.2012    source источник


Ответы (1)


Если вы хотите разрабатывать для JDK1.5, загрузите JDK1.5 и используйте его для разработки своего приложения. NetBeans позволяет использовать другой JDK, чем тот, с которым он поставляется.

Вы стреляете себе в ногу, ориентируясь на JDK1.5 и разрабатывая JDK1.6.

person JB Nizet    schedule 21.01.2012
comment
Я сделал это, но я попытался запустить его на другой машине с только 1,5, и это дало мне исключения. - person Gregor; 21.01.2012
comment
Тогда вы, вероятно, не используете один и тот же путь к классам на своей машине разработчика и на другой машине. Исправьте путь к классам. - person JB Nizet; 21.01.2012
comment
В порядке. Я сделал проект на jdk1.5, теперь запускаю и на 1.5. Получение: java.lang.ExceptionInInitializerError Вызвано: javax.xml.ws.WebServiceException: Provider com.sun.xml.internal.ws.spi.ProviderImpl не найден в javax.xml.ws.spi.FactoryFinder.newInstance(FactoryFinder.java :33) в javax.xml.ws.spi.FactoryFinder.find(FactoryFinder.java:128) в javax.xml.ws.spi.Provider.provider(Provider.java:108) в javax.xml.ws.Service. ‹инициализация›(Service.java:57) - person Gregor; 21.01.2012
comment
Сравните пути к классам и найдите, чего не хватает на второй машине. Вероятно, вы забыли добавить jaxws-rt-xxx.jar (по крайней мере) в путь к классам. - person JB Nizet; 21.01.2012
comment
Он застрял на java.lang.NoSuchMethodError: com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.getNamespaceContext()Lcom/sun/org/apache/xerces/internal/xni/NamespaceContext; на com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.‹init›(XMLStreamReaderImpl.java:98) на com.sun.xml.internal.stream.XMLInputFactoryImpl.getXMLStreamReaderImpl(XMLInputFactoryImpl.java:267) на com .sun.xml.internal.stream.XMLInputFactoryImpl.createXMLStreamReader(XMLInputFactoryImpl.java:140) at ... возможно, библиотеки несовместимы друг с другом? - person Gregor; 21.01.2012
comment
Если он работает на одном компьютере с данным JDK, он должен работать и на другом с тем же JDK, если вы используете один и тот же путь к классам. Возьмите путь к классам и библиотеки на первой машине и используйте их на второй. - person JB Nizet; 21.01.2012
comment
Я это знаю, но он не работает на той же машине. Когда я создаю проект в netbeans, он хочет иметь jdk1.6 (не могу запустить nb на 1.5). и когда я меняю целевой путь запуска на 1,5, я получаю все эти исключения. - person Gregor; 21.01.2012
comment
я, наконец, получил все банки в путь к классам, когда я запускаю WS Client, я получаю: java.lang.ExceptionInInitializerErrorВызвано: аннотация WebService отсутствует в классе: java.net.URL я сгенерировал его с помощью wsimport. - person Gregor; 21.01.2012
comment
Вы должны задать другой вопрос, потому что ваш первоначальный вопрос не имеет ничего общего с ситуацией, в которой вы находитесь. - person JB Nizet; 21.01.2012