VMware Cloud Community
FreddyFredFred
Hot Shot
Hot Shot

problems calling workflows after upgrade

So did my vCO 5.1.1 to 5.5.1 upgrade and we can't call workflows anymore.

We call the url https://vcoserver:8281/vmware-vmo-webcontrol/webservice


and it just doesn't work anymore


We're using the function to return the workflow name but it doesn't seem to do much good. If we go to that URL  I get this:


webservice

Hi there, this is an AXIS service!

Perhaps there will be a form for invoking the service here...


After a bit more messing around I saw this error in the logs:


2014-04-28 16:47:06.301-0400 [http-bio-10.2.110.77-8281-exec-2] ERROR {} [EXCEPTIONS] Generating fault class

AxisFault

faultCode: {http://xml.apache.org/axis/}Client.NoSOAPAction

faultSubcode:

faultString: no SOAPAction header!

faultActor:

faultNode:

faultDetail:

    {http://xml.apache.org/axis/}stackTrace:no SOAPAction header!

    at org.apache.axis.transport.http.AxisServlet.getSoapAction(AxisServlet.java:1013)

    at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:678)

    at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)

    at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)

    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

    at ch.dunes.vso.webservice.server.SoapActiveNodeFilter.doFilter(SoapActiveNodeFilter.java:38)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)

    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)

    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:581)

    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)

    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)

    at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:680)

    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929)

    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)

    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)

    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002)

    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)

    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)

    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

    at java.lang.Thread.run(Unknown Source)

If anyone has ideas it would be appreciated

Thanks

Reply
0 Kudos
6 Replies
cdecanini_
VMware Employee
VMware Employee

Try to add /vco after the port number

If my answer resolved or helped you, please mark it as Correct or Helpful to award points. Thank you! Visit http://www.vcoteam.info & http://blogs.vmware.com/orchestrator for vCenter Orchestrator tips and tutorials - @vCOTeam on Twitter
Reply
0 Kudos
FreddyFredFred
Hot Shot
Hot Shot

i'm told we already tried that (new thing in 5.5 i guess) but it didn't help

Reply
0 Kudos
cdecanini_
VMware Employee
VMware Employee

You should test yourself since when getting to https://vcoserver:8281/vmware-vmo-webcontrol/webservice in a web server vCO redirects to https://vcoserver:8281/vco/vmware-vmo-webcontrol/webservice and display the webservice page.

If my answer resolved or helped you, please mark it as Correct or Helpful to award points. Thank you! Visit http://www.vcoteam.info & http://blogs.vmware.com/orchestrator for vCenter Orchestrator tips and tutorials - @vCOTeam on Twitter
Reply
0 Kudos
FreddyFredFred
Hot Shot
Hot Shot

that works but when we try to call the GetWorkflowsWithName it just fails with the following error:

The content type text/html;charset=utf-8 of the response message does not match the content type of the binding (text/xml; charset=utf-8). If using a custom encoder, be sure that the IsContentTypeSupported method is implemented properly. The first 134 bytes of the response were: '<h1>webservice</h1>

<p>Hi there, this is an AXIS service!</p>

<i>Perhaps there will be a form for invoking the service here...</i>

also we were getting a certificate error but since adding:

ServicePointManager.ServerCertificateValidationCallback = (s, certificate, chain, sslPolicyErrors) => true;

we don't get that error anymore.

Reply
0 Kudos
cdecanini_
VMware Employee
VMware Employee

Unfortunately I am not familiar enough with the SOAP web service to solve this error. It seems you get the web page instead of the web service itself.

If my answer resolved or helped you, please mark it as Correct or Helpful to award points. Thank you! Visit http://www.vcoteam.info & http://blogs.vmware.com/orchestrator for vCenter Orchestrator tips and tutorials - @vCOTeam on Twitter
Reply
0 Kudos
FreddyFredFred
Hot Shot
Hot Shot

  1. System.Net.ServicePointManager.ServerCertificateValidationCallback += (se, cert, chain, sslerror) => true;

The first one works around the self signed cert (but I don't know why we suddenly need it post upgrade since the cert was imported into the trusted root certificates store)

and this line defines the endpoint a 2nd time after creating the initial object. Our our app.config has the same url. Without the line below we get that html page, when we redefine the endpoint (to the same as the initial one), it seems to work.

  service.Endpoint.Address = new EndpointAddress("https://vcoserver:8281/vco/vmware-vmo-webcontrol/webservice");

Reply
0 Kudos