2 replies Latest Post - ‏2013-03-29T07:57:13Z by M Groeneweg
6195 Posts

Pinned topic EGL generates invalid SOAP request

‏2013-03-27T13:59:14Z |
We're supposed to call an external web service from our EGL app. The interface generated from the provided wsdl file has all the generated namespaces, but the SOAP request coming out of our app doesn't.
The request is supposed to look like this:

<ser:FizickaOsobaRequest xmlns:ser=
"http://MUP.MU/FizickaOsoba/Service"> <ser:zaglavlje> <upit:KorisnikOIB xmlns:upit=
"http://MUP.MU/FizickaOsoba/Upit">00000000001</upit:KorisnikOIB> <upit:InstitucijaID xmlns:upit=
"http://MUP.MU/FizickaOsoba/Upit">399100</upit:InstitucijaID> <upit:OrganizacijskaJedinica xmlns:upit=
"http://MUP.MU/FizickaOsoba/Upit">Ministarstvo uprave</upit:OrganizacijskaJedinica> <upit:SvrhaPretrage xmlns:upit=
"http://MUP.MU/FizickaOsoba/Upit">6</upit:SvrhaPretrage> </ser:zaglavlje> <ser:FizickaOsoba> <upit:OIB xmlns:upit=
"http://MUP.MU/FizickaOsoba/Upit">33266440729</upit:OIB> </ser:FizickaOsoba> </ser:FizickaOsobaRequest>

but, it looks like this

<p762:FizickaOsoba xmlns:p762=
"http://MUP.MU/FizickaOsobaWebServis"> <FizickaOsobaRequest> <zaglavlje> <KorisnikOIB>00000000001</KorisnikOIB> <InstitucijaID>399100</InstitucijaID> <OrganizacijskaJedinica>Ministarstvo uprave</OrganizacijskaJedinica> <SvrhaPretrage>6</SvrhaPretrage> </zaglavlje> <FizickaOsoba> <OIB>33266440729</OIB> <MBG /> </FizickaOsoba> </FizickaOsobaRequest> </p762:FizickaOsoba>

Any advice on how to get this to work properly?

Updated on 2013-03-29T07:57:13Z at 2013-03-29T07:57:13Z by M Groeneweg
  • markevans
    2612 Posts

    Re: EGL generates invalid SOAP request

    ‏2013-03-28T16:10:06Z  in response to SystemAdmin

    I would suggest you open a PMR and supply the following information:

    • Where the web service client is running (Java Gen/COBOL Gen) and application server if applicable.

    • Is the web service client using the wsdl created by RBD or set to use existing?

    • if you are "using existing", then you would need to supply the wsdl
  • M Groeneweg
    M Groeneweg
    80 Posts

    Re: EGL generates invalid SOAP request

    ‏2013-03-29T07:57:13Z  in response to SystemAdmin
    Hi Nikola,

    We have had our share of 'interesting' stuff here...
    If you use a WSDL created outside EGL, your deployment descriptor entry must specify to use existing WSDL and use existing interface.
    If these are not set, EGL will generate its own interpretation of the supplied WSDL, which is usually not correct.
    The EGL interpretation of the WSDL will be in WebContent/wsdl.
    If you add a service binding to your EGL deployment descriptor and the checkbox to use the existing WSDL is turned off by the wizard, this quite often means that the WSDL contains an artifact that EGL does not like or understand. Turning on the checkbox usually will bring up an error about the WSDL if that is the case.
    Then it is a little trial and error to figure out what EGL does not like because the wizard is often not able to point that out.
    You could import the WSDL again in a dummy project and then enabling only one function at a time to know which part is not acceptable.
    Some other limitations we know of:
    • SOAP 1.1
    • Wrapped document literal
    • No any types