Не может связать с веб-сервисом: java.lang. У StackTraceElement нет конструктора по умолчанию без аргументов

Я пытаюсь связать с существующим устаревшим веб-сервисом, который бежит в тестовой среде, принятой на сервере JBoss, но Весна не может создать боб из-за ниже исключения:

Caused by: javax.xml.ws.WebServiceException: Unable to create JAXBContext
    at com.sun.xml.internal.ws.model.AbstractSEIModelImpl.createJAXBContext(AbstractSEIModelImpl.java:153)
    at com.sun.xml.internal.ws.model.AbstractSEIModelImpl.postProcess(AbstractSEIModelImpl.java:83)
    at com.sun.xml.internal.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:244)
    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 org.springframework.remoting.jaxws.JaxWsPortClientInterceptor.getPortStub(JaxWsPortClientInterceptor.java:413)
    at org.springframework.remoting.jaxws.JaxWsPortClientInterceptor.prepare(JaxWsPortClientInterceptor.java:337)
    at org.springframework.remoting.jaxws.JaxWsPortClientInterceptor.afterPropertiesSet(JaxWsPortClientInterceptor.java:316)
    at org.springframework.remoting.jaxws.JaxWsPortProxyFactoryBean.afterPropertiesSet(JaxWsPortProxyFactoryBean.java:42)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1514)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1452)
    ... 38 more
Caused by: java.security.PrivilegedActionException: com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
java.lang.StackTraceElement does not have a no-arg default constructor.
    this problem is related to the following location:
        at java.lang.StackTraceElement
        at public java.lang.StackTraceElement[] java.lang.Throwable.getStackTrace()
        at java.lang.Throwable
        at java.lang.Exception
        at uk.co.example.UserException
        at public javax.xml.bind.JAXBElement uk.co.example.ObjectFactory.createUserException(uk.co.example.UserException)
        at uk.co.example.ObjectFactory

    at java.security.AccessController.doPrivileged(Native Method)
    at com.sun.xml.internal.ws.model.AbstractSEIModelImpl.createJAXBContext(AbstractSEIModelImpl.java:140)

Я связываю с веб-сервисом через Весну xml:


    
    
    
    
    
    

Мой UserException просто расширяет java.lang. Исключение:

public class UserException extends Exception
{

}

Таким образом, мой веб-сервис содержит метод, который объявляет бросок UserException. UserException расширяет java.lang. Исключение, которое содержит ссылку на StackTraceElement, у которого нет конструктора без аргументов. Следовательно исключение JAXB. То, что очень я поднял с некоторых других постов по этому вопросу.

То, что я не понимаю: почему этот конкретный веб-сервис и этот конкретный класс исключений? И конечно, как я исправляю это?

Мой веб-сервис бросает многочисленные другие исключения (большинство, кажется, расширяет java.lang. Исключение). Другой веб-сервис (то, которое не бросает UserException, но бросает другие сделанные на заказ подклассы Исключения), который бежит в том же самом сервере JBoss, хорошо работает. У 2 различных наборов веб-сервисов есть различные банки клиента.

Я просто создал проект Знатока Затмения, который потянули в Весеннем тесте и веб-банках (v3.1.0), junit и log4j. 2 банки клиента (существующий ранее как часть наследия строят) находятся также на пути к классу. Я создал Junit, который автотелеграфирует боб по доверенности как интерфейс Authentication, и назовите authenticateUser() методом на нем.

Поскольку это - устаревший код, я ничего не могу изменить в бегущем веб-сервисе или произведенных банках клиента.

Какие-либо предложения?

Я допущу ко что-то вроде новичка когда дело доходит до веб-сервисов и также как наш устаревший код построен и развернут, поэтому не бойтесь спросить что-либо, что вы думаете, могло бы быть слишком очевидным!

1
nl ja de
У меня была та же самая проблема на JDK 1.7 когда интерфейс JAXWS и МЕТРО 2.0 внедрения, где по ошибке включено в военный файл IDE (NetBeans). После чистки проекта закончилась ошибка.
добавлено автор Boris Treukhov, источник
Почему can' t вы изменяют банки клиента?
добавлено автор Sean Patrick Floyd, источник

1 ответы

Если вы не можете изменить клиента или серверный код, вы могли бы все еще написать вашему собственному клиенту, который расширяет существующего клиента, и попытайтесь добавьте таможенное закрепление JAXB там.

0
добавлено
pro.jvm
pro.jvm
3 503 участник(ов)

Сообщество разработчиков Java Scala Kotlin Groovy Clojure Чат для нач-их: @javastart Наш сайт: projvm.com projvm.ru Наш канал: @proJVM Вакансии: @jvmjobs Конфы: @jvmconf

Java & Co
Java & Co
2 370 участник(ов)

Можно обсуждать с матом и без всё, что касается жабы, вплоть до холиваров. НЕ ИМЕЕТ ОТНОШЕНИЯ К САЙТУ JAVARUSH.RU ПРАВИЛА - https://t.me/javarush/75723 Вакансии сюда - https://telegram.me/joinchat/B7IzvUCnfo6d8t3yIxKguQ По вопросам - @thedude

learn.java
learn.java
1 888 участник(ов)

Чат для начинающих и не только Статистика: https://combot.org/chat/-1001083535868 Основной чат - @jvmchat

Spring Framework and more
Spring Framework and more
839 участник(ов)

чат о spring framework и связанных с ним технологиях. We're discussing: job, tech questions, beer meet up/networking: tech review ,LinkedIn skills, SOF q/a raise up& etc. languages: russian,java,eng.

Java Underground
Java Underground
169 участник(ов)

https://vk.com/javatutorial

Javanese Questions
Javanese Questions
109 участник(ов)

Чат предназначен для обмена знаниями строго в формате в вопрос-ответ. Тема — Java, Kotlin и Android. Вопрос должен быть предварительно прогуглен, понятно и грамотно сформулирован, помечен хэштегами. Ответ — тем более. Куски кода размером в несколько строк можно писать прямо здесь, для больших кусков кода стоит использовать http://gist.github.com/, http://pastebin.com/, https://codeshare.io/ или любой аналогичный сервис. В некоторых случаях можно прикреплять скриншоты. Стикеры и гифки запрещены. Дополнять и уточнять вопросы и ответы — редактированием исходного сообщения. Обсуждения должны приводить к редактированию вопроса/ответа и удаляться. По хештегам можно искать существующие вопросы и овтеты: #вопрос #ответ #git #generics #java #server #awt #javafx #swing #kotlin #anko #tornadofx #ktor #android #recyclerView #performance #arch #network #permissions #storage #async