Appian Community
Site
Search
Sign In/Register
Site
Search
User
DISCUSS
LEARN
SUCCESS
SUPPORT
Documentation
AppMarket
More
Cancel
I'm looking for ...
State
Verified Answer
+2
person also asked this
people also asked this
Replies
6 replies
Subscribers
7 subscribers
Views
2924 views
Users
0 members are here
Share
More
Cancel
Related Discussions
Home
»
Discussions
»
Integrations
We are having an issue with the webservicequery() function where the function cl
mikej117
over 9 years ago
We are having an issue with the webservicequery() function where the function claims that the called web service method is not available. The method is infact there (I've called it successfully from SoapUI and from a Call Web Service smart service). It seems like there may be an old WSDL cached for this function (the called method was added after the initial version of the WSDL).
The (anonymised) error message coming back from the function is:
The operation [{http://soap.mydomain.com/}getFlatEmployeesForSupervisorSearch] is not present in the binding [{http://soap.mydomain.com/}EmployeeWebServiceServiceSoapBinding].
Available operations in that binding: [
{http://soap.mydomain.com/}getFullEmployeesForSupervisor,
{http://soap.mydomain.com/}getFlatEmployeesForSupervisor,
{http://soap.mydomain.com/}getAllCurrentJobs,
{http://soap.mydomain.com/}getEmployeeStatusDetails,
{http://soap.mydomain.com/}searchDetailEmployee
]
OriginalPostID-148048
OriginalPostID-148048
Discussion posts and replies are publicly visible
0
Eduardo Fuentes
Appian Employee
over 9 years ago
Have you tried restarting the application server to clear the WSDL cache? or verified the syntax is correct?
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel
0
mikej117
over 9 years ago
Not tired restarting the appserver yet (it's a cloud service).
When you say "verified the syntax", do you mean look at the HTTP request? I'm not sure how I can get access to do that. We have been able to call other methods from the same web service endpoint using webservicequery(), so I'm pretty sure that's correct...
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel
0
Eduardo Fuentes
Appian Employee
over 9 years ago
I mean the syntax of your webservicequery() arguments. Per the documentation
operation (Text): The operation on the web service to invoke. The value that should be passed here is found in the WSDL as the value of the name attribute of the <wsdl:operation> element within the <wsdl:binding> element that corresponds to the selected <wsdl:port> element. The name must be prefixed with the target namespace of the WSDL, and that namespace must be surrounded by braces. For example, if the target namespace of the wsdl is "
http://example.org"
and the name attribute of the <wsdl:operation> element is "echoHello," the value for this parameter would be {
http://example.org}echoHello.
If you can confirm the operation is properly passed into the wsConfig object then you can coordinate via support case the restart of the application server to clear the WSDL cache.
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel
0
mikej117
over 9 years ago
Yes, the syntax has been checked. Support ticket has been raised to restart the server. Thanks.
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel
+1
mikej117
over 9 years ago
FYI: the app server restart has solved the issue for us.
Thanks for your help, Eduardo.
Cancel
Vote Up
0
Vote Down
Sign in to reply
Reject Answer
Cancel
0
Eduardo Fuentes
Appian Employee
over 9 years ago
Great news! This means the WSDL changed and the cache didn't have the latest version yet.
Cancel
Vote Up
0
Vote Down
Sign in to reply
Verify Answer
Cancel