Java: запрос структуры больших объектов, таких как xpath - PullRequest
0 голосов
/ 05 ноября 2018

Я пишу клиент WS с cxf, и у меня большая структура ответов (1500+ классов). Мне нужна только примерно половина данных из ответа, но она находится внутри N-го уровня.

Я устал проверять каждый уровень, пример:

<response>
    <wrapper>
        <databaseObject>
            <living>
                <person>
                    <personName>
                        <databaseObject>
                        ...

в коде:

wrapper = response.getWrapper();
if(wrapper!=null){
    databaseObject = wrapper.getDatabaseObject();
    if(databaseObject!=null){
        living = databaseObject.getLiving();
        ... etc ...

Я искал какой-нибудь быстрый (кодирующий) способ доступа к последнему уровню, например, как XPAth:

obj = searchedFunction(response,"/wrapper/databaseObject/living/person/personName/databaseObject");

и я возвращаю объект, если он есть, или ноль, если какой-либо родительский объект отсутствует.

ответ генерируется с помощью wsdl2java apache cxf, а клиент ws является прокси-клиентом cxf.

Thanx

...