Код: Выделить всё
com.sun.xml.ws
jaxws-maven-plugin
4.0.3
wsimport
file:/C:/Users/cactus/IdeaProjects/dataexchange/src/main/resources/dataexchangeservice.wsdl
true
dataexchange.client
${project.build.directory}/generated-sources/
< /code>
Я загрузил файл wsdl и вставил в мою папку ресурсов, где он успешно краснеет, и классы генерируются.
Чтобы плагин работал, мне также нужна эта зависимость: < /p>
com.sun.xml.ws
jaxws-rt
4.0.3
< /code>
До здесь все работает нормально, но теперь я получаю первые ошибки. Я также добавил их в мой модуль info.java:
module lk.dataexchange{
requires javafx.controls;
requires javafx.fxml;
requires org.kordamp.bootstrapfx.core;
requires jakarta.xml.ws;
opens lk.dataexchange to javafx.fxml;
exports lk.dataexchange;
}
< /code>
Теперь моя программа запускается только тогда, когда я комментирует зависимость JAXWS-RT, упомянутая ранее (которая мне нужно для генерации WSDL).
Если она не прокомментирована, я получаю следующую ошибку: < /p>
Ошибка во время инициализации. org.glassfish.jaxb.runtime.v2.runtime.reflect in both module org.glassfish.jaxb.runtime and module com.sun.xml.bind
Now if I click on my start button (in order to send a request to the webservice), i get the following error:
jakarta.xml.ws.WebServiceException: Provider com.sun.xml.ws.spi.ProviderImpl not found
Я уже много пробовал, используя CHATGPT, что на самом деле не было помощи. Похоже, что проблема заключается в том, что у меня есть некоторые старые зависимости (JAXWS вместо джакарты), от которых я не могу избавиться из -за моего плагина поколения WSDL. Затем Chatgpt сказал мне использовать эти зависимости метро: < /p>
Код: Выделить всё
org.glassfish.metro
webservices-api
4.0.4
org.glassfish.metro
metro-runtime-impl
4.0.4
< /code>
Но тогда у меня было много модулей, удвоенных или несовместимых, что также не приводило к решению.
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
lk
dataexchange
1.0-SNAPSHOT
dataexchange
UTF-8
5.10.2
23
23
org.openjfx
javafx-controls
17.0.6
org.openjfx
javafx-fxml
17.0.6
org.kordamp.bootstrapfx
bootstrapfx-core
0.4.0
org.junit.jupiter
junit-jupiter-api
${junit.version}
test
org.junit.jupiter
junit-jupiter-engine
${junit.version}
test
org.ini4j
ini4j
0.5.4
jakarta.xml.ws
jakarta.xml.ws-api
4.0.2
org.glassfish.jaxb
jaxb-runtime
4.0.3
jakarta.xml.bind
jakarta.xml.bind-api
4.0.2
org.apache.maven.plugins
maven-compiler-plugin
3.13.0
23
23
org.openjfx
javafx-maven-plugin
0.0.8
default-cli
lk.dataexchange/lk.dataexchange.App
app
app
app
true
true
true
com.sun.xml.ws
jaxws-maven-plugin
4.0.3
wsimport
file:/C:/Users/cactus/IdeaProjects/dataexchange/src/main/resources/dataexchangeservice.wsdl
true
dataexchange.client
${project.build.directory}/generated-sources/
Подробнее здесь: https://stackoverflow.com/questions/795 ... n-xml-bind