выкліку вэб-службу JAX-WS з масівам парамі, выкарыстоўваючы GET

У мяне ёсць праца вэб-службы CXF JAX-WS з імем «diagnosticPing», які прымае два Params, у Int і String [] масіў. З WSDL:



Я хацеў бы, каб паспрабаваць выклікаць гэтую аперацыю з браўзэра наўпрост, так як гэта было б карысным спосабам «пінг» службы без неабходнасці такога інструмента, як SoapUI. Тым не менш, я не магу зразумець, як пабудаваць свой радок запыту так, што служба распазнае String [] масіў параметраў. Мая лепшая спроба была нешта накшталт:

https://hostname/ServiceUri/service/diagnosticPing?depth=2&instructions=%22accountType%3DABC%22,%22action%3DgetDetails%22,%22version%3D1.0%22}

Але я атрымаў памылку наступным чынам:

<�Р> неадпаведнасці тыпаў аргументаў пры выкліку грамадскага java.util.List   ca.gwl.group.account.service.routing.AccountServiceRouter.diagnosticPing (ідэалам, java.lang.String []) з Params [2, { "AccountType = ABC", "дзеянне = getDetails", "версія = 1.0"} ]. </р>

Хто-небудзь ёсць якія-небудзь ідэі, як выклікаць вэб-службу з запытам радком парамі, якія будуць прынятыя ў выглядзе масіва String?

0
Звярніце ўвагу, што гэта проста масіў радкоў адзін-памер, гэта значыць у java.lang.String []
дададзена аўтар Michael Lucas, крыніца

1 адказы

Не падобна, што ёсць спосаб. Калі вы хочаце паглядзець на яго, вы можаце выкапаць ў CXF URIMappingInterceptor. Існуе метад там называецца:

private Object readType(String value, Class type)

што неабходна будзе абнавіць для апрацоўкі калекцый і масіваў. Патчы вітаюцца.

:-)

1
дададзена
Можа таксама быць зроблена шляхам стварэння карыстацкага перахопніка і ўставіць яго ў ланцуг у патрэбны момант? Гэта можа быць добрым спосабам, каб уключыць і пратэставаць гэтую функцыю ў маіх бізнэс-прыкладаннях без патча CXF, хоць я быў бы рады ўнесці свой уклад патч пасля. Але я не ўпэўнены, наколькі гэта магчыма звычай перахопнік для вырашэння гэтага (толькі зрабіў асноўны матэрыял з CXF).
дададзена аўтар Michael Lucas, крыніца