SuffolkLITLab / EfileProxyServer

A proxy server that acts as an Efiling Service Provider, connecting guided interviews to Efiling Managers on Tyler Technologies implementation of ECF 4.0
https://suffolklitlab.org/docassemble-AssemblyLine-documentation/docs/efiling/overview/
MIT License
3 stars 2 forks source link

Temp Fix getStatus #185

Closed BryceStevenWilley closed 1 week ago

BryceStevenWilley commented 2 months ago

Update Schema to 2024.3.

Originally, I was trying to fix this error

response_code: 500, data: {'cause2': 'com.sun.istack.SAXParseException2; lineNumber: 0; columnNumber: 0; unexpected element (uri:"urn:tyler:efm:services:schema:Common", local:"Status"). Expected elements are <{urn:tyler:efm:services:schema:Common}RestrictFiling>,<{urn:tyler:efm:services:schema:Common}Role>,<{urn:tyler:efm:services:schema:Common}RestrictFilingComment>,<{urn:tyler:efm:services:schema:Common}Email>,&lt ...

However, I got stuck trying to figure it out. Then, another Schema related error started happening in production (unexpected element (uri:&quot;urn:tyler:ecf:extensions:Common&quot;, local:&quot;ServiceConsentEmail&quot;)), which forced me to make more progress here.

Eventually realized that the GetStatus error has to be on Tyler's side; when we call them with the Status attribute in UserType, we get an error (even though it's in the Schema they give us), but when we manually remove it from the client-side schema and Java code, the UserType they return has a Status in it, which the client errors on! I've reached out to them for them to fix the issue, but it seems to be a stage only thing. I turned off that check in the integration test, and every thing else works fine.

Going to merge this.

codestronger commented 2 months ago

Ah, does appear to be a lot of sorting changes. Wonder why the ordering changed..? 🤔 Changes look pretty good to me.

I did notice that the WebServiceClient WSDL locations changed from classpath to file resources. Is that intentional?

Example of New Value:

@WebServiceClient(name = "EfmUserService",
                  wsdlLocation = "file:illinois-EFMUserServiceSingle.svc.wsdl",
                  targetNamespace = "urn:tyler:efm:services")

Previously:

                  wsdlLocation = "classpath:wsdl/EFMUserServiceSingle.svc.wsdl",
BryceStevenWilley commented 1 week ago

Ah, does appear to be a lot of sorting changes. Wonder why the ordering changed..? 🤔

:shrug: I think it has something to do with how wsdl2java works, I assume it's using Sets or something unsorted internally during code generation. It'd be so nice if that wasn't an issue, but eh.

I did notice that the WebServiceClient WSDL locations changed from classpath to file resources. Is that intentional?

That's not! That is another wsdl2java makes for you, and we have to manually revert.