Когда я запускаю плагин JAXB, файлы создаются, но без @XmlRootElement, по этой причине мне нужно вручную добавить эту аннотацию в дополнение к добавлению «extends» в класс, однако при каждом обновлении проекта происходит изменение отменить:
@XmlRootElement
public class BuscarVeiculo extends BuscarGenericDao {
Мой пом. xml выглядит так:
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.14.0</version>
<executions>
<execution>
<id>veiculo</id>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<schemaLanguage>WSDL</schemaLanguage>
<schemaDirectory>${project.basedir}/src/main/resources/wsdl</schemaDirectory>
<schemaIncludes>
<include>VeiculoWS.wsdl</include>
</schemaIncludes>
<generatePackage>com.pmdf.soap.api.soap.project.veiculo</generatePackage>
<generateDirectory>${project.basedir}/src/main/java</generateDirectory>
</configuration>
</execution>
</executions>
</plugin>
В коде ниже я звоню:
@Service
public class SoapClientService {
@Autowired
private Jaxb2Marshaller marshaller;
private WebServiceTemplate template;
public JAXBElement<?> findMyObject(FindGenericDao request, String URI) {
template = new WebServiceTemplate(marshaller);
JAXBElement<?> vehicle = (JAXBElement<?>) template.marshalSendAndReceive(URI , request);
return vehicle;
}
}