Axis2 Error

Community Beginner ,
Oct 19, 2017 Oct 19, 2017

Copy link to clipboard

Copied

I have recently starting forcing Https on one of my Coldfusion Instances.

Made the appropriate changes to the Axis2.xml file within the instance and was able to register a web service.

This specific web service that is failing is being called from another CF instance that isn't forcing Https but it does have this configuration in the Axis2.xml

    <transportReceiver name="https"

                       class="coldfusion.xml.rpc.CFAxisServletListener">

          <parameter name="port">80</parameter>

    </transportReceiver>

    <transportReceiver name="https"

                       class="coldfusion.xml.rpc.CFAxisServletListener">

          <parameter name="port">443</parameter>

    </transportReceiver>

The error I am getting in the axis2.log is:

     [ajp-nio-8022-exec-1] AXIS2 ERROR org.apache.axis2.description.ClientUtils - The system cannot infer the transport information from the  URL.

Doing a google search of this error it looks like there is supposed to be URL listed where mine is blank, this may be the key to the issue but I just have very little experience with this. I haven't been able to find much more on this error via google.

Views

1.0K

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct Answer

Adobe Community Professional , Oct 19, 2017 Oct 19, 2017
Kevin, what are the versions of the two CF instances and what are the JVM versions they are running? Both are shown via the CF Admin page, clicking the "i" icon in the top right. This info may play a factor.Also, for each, it may be important to know if they are publishing and consuming the web service as Axis2. That is controlled (on each side) by either of 3 settings: in the CF Admin (on the web services page), in the application.cfc or cfm (where there is a wsversion attribute), or in the cod...

Likes

Translate

Translate
Adobe Community Professional ,
Oct 19, 2017 Oct 19, 2017

Copy link to clipboard

Copied

Kevin, what are the versions of the two CF instances and what are the JVM versions they are running? Both are shown via the CF Admin page, clicking the "i" icon in the top right. This info may play a factor.

Also, for each, it may be important to know if they are publishing and consuming the web service as Axis2. That is controlled (on each side) by either of 3 settings: in the CF Admin (on the web services page), in the application.cfc or cfm (where there is a wsversion attribute), or in the code, where that wsversion can be specified in the cfcomponent that is serving the web service, and the code that is calling it, whether via CFINVOKE, CFOBJECT, or createobject.

All these could influence why something may not work, and why you may find little other discussion (because imagine the permutations of the options above), and how some small number of configuration choices may lead to the error you see, which perhaps few others also have.


/Charlie (server troubleshooter, carehart.org)

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Oct 19, 2017 Oct 19, 2017

Copy link to clipboard

Copied

Charlie,

Thank you for the response.

I am currently running:

CF 2016 update 5 Version: 2016.0.05.303689

JVM 1.8

Apache 2.4.27

Openssl 1.0.1l

Unix environment

Both instances are on the same server.

-CFadmin>Webservices page:

Both are set to use Axis version 2, I can register the webservice on the other server that it's called from by full (/url/application.cfc?WSDL)

-Looking at the "instance/wwwroot/CFIDE/application.cfm" there isn't a wsversion specified

-The only cfinvoke in this application doesn't specify a wsversion either.

I do see that they are consuming as Axis2 in the logs for each coldfusion instance

webservice.log:

Server that web service is being called from

"Information","ajp-nio-8022-exec-5","10/18/17","13:00:41","","Downloaded the wsdl http://wtgdev.com/webservices/planning/planning_project_complete.cfc?WSDL"

"Information","ajp-nio-8022-exec-5","10/18/17","13:00:41","","Using Axis 2 for consuming the service http://wtgdev.com/webservices/planning/planning_project_complete.cfc?WSDL."

"Information","ajp-nio-8022-exec-5","10/18/17","13:01:22","","Using Axis 2 for consuming the service ."

Server that web service resides on

"Information","ajp-nio-8030-exec-1","10/18/17","13:00:41","","Using Axis 2 framework for servicing the web service request to the endPoint https://wtgdev.com/webservices/planning/planning_project_complete.cfc."

The "project_planning_complete.cfc" is hard coded to point to http and then I'm using an apache vhost.conf redirect to force https, I'm not the developer of the web service but could this be causing it?

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Oct 20, 2017 Oct 20, 2017

Copy link to clipboard

Copied

Hang on. Shouldn't that be

<transportReceiver name="http"

                       class="coldfusion.xml.rpc.CFAxisServletListener">

          <parameter name="port">80</parameter>

</transportReceiver>

instead?

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Oct 25, 2017 Oct 25, 2017

Copy link to clipboard

Copied

BKBK,

Good catch, I did just copy/paste that in and only changed the port number. I tried that yesterday with it as "http" and still no go.

I also tried removing the <parameter name="port">80</parameter> and the 443 one. I was still able to register the web service and was redirected to the web service page as https and could view the xml code in browser. But no luck with the web service running.

Another thing that I feel I should mention is that, this web service will work if I change the axis version in CF Admin>Web Services to version 1. But This isn't an option because when I do this on production more web services break. This leads me to believe that its some other configuration within the axis2.xml.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Oct 25, 2017 Oct 25, 2017

Copy link to clipboard

Copied

Well, Kevin, as I noted in my first reply, you can control the axis version EITHER at a) the admin (which is global, unless overridden), or b) at the app level (in application.cfm or cfc, if you want to control it for all web service processing in that app), or c) in the cfcomponent or script equivalent for the CFC being served as a web service, or d) in the cfinvoke/cfobject/createobject call from the consumer of the web service.

You have said you can't do a, but you also confirmed you were not currently doing b or d. Why not try b (on the calling or serving side), or c (on the serving side), and/or d (on the consuming side)?


/Charlie (server troubleshooter, carehart.org)

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Oct 25, 2017 Oct 25, 2017

Copy link to clipboard

Copied

Charlie,

That's a great idea, sorry wasn't reading between the lines on that one before. I'm going to propose that to the web developers and see if we can push forward that way.

Thank you,

I will update with status after testing.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Jan 08, 2018 Jan 08, 2018

Copy link to clipboard

Copied

That did it, having the Axis version set in the code fixed it.

wsversion=1

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Community Professional ,
Jan 08, 2018 Jan 08, 2018

Copy link to clipboard

Copied

LATEST

Very good to hear. Thanks for the confirmation, and for marking the "answer".


/Charlie (server troubleshooter, carehart.org)

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines