Я только начал изучать CXF. Я сделал проект архетипа maven через затмение. Когда я запускаю maven build и разворачиваю в JBoss свой рабочий режим.Использование CXF с eclipse
@WebService
public interface HelloWorld {
String sayHi(String text);
}
@WebService(endpointInterface = "foo.HelloWorld")
public class HelloWorldImpl implements HelloWorld {
public String sayHi(String text) {
return new "Hello"+text;
}
}
Затем я создал класс Employee с именем и зарплатой в качестве поля с геттером и сеттерами. И я просто изменил возвращаемый тип метода HelloWorld sayHi для Employee, и я вернул объект Employee из метода HelloWorldimpl sayHi.
Тогда и работает нормально (я имею в виду, я проверил его с помощью SOAP UI, после изменения кода я получаю XML-Employee)
Где это преобразование кода, написанного.
Кроме того, я не нашел cxf.xml и CxF-servlet.xml в коде: (Где эти XML хранятся в коде)
<import resource="classpath:META-INF/cxf/cxf.xml" />
<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
Пожалуйста, помогите мне понять это.
@ ŁukaszBachman Я получил файлы XML в файле CXF * .jar.
Что делать, чтобы сделать расширение в этом проекте. Нужно ли добавлять компоненты в xml-файлы?
Вы не должны изменять какие-либо части библиотеки CXF, если только вы не находитесь в команде разработчиков, вкладчике или абсолютно не знаете, что делаете;) Однако вы можете расширить некоторые компоненты благодаря Spring и IoC. Например: если у вас есть интерфейс X, созданный CXF и реализованный в XImpl1, вы всегда можете определить свою собственную реализацию XImpl2 и связать ее с CXF, если создатели этой библиотеки предполагали, что она будет расширена. Как правило, не расширяйте части API, которые не предназначены для расширения. Хорошо разработанные API-интерфейсы должны предоставить вам достаточную гибкость, чтобы использовать его по своему усмотрению. –