Forum

This content is now out of date.

Visit Our Community

Error calling RemoteAdministrationCall operation from ASP.NET

Hi,

I have an ASP.NET web application attempting to Single Sign On to YellowFin.
The web application generates the necessary stubs to call the Administration service.

When I call the RemoteAdministrationCall with function 'LOGINUSER' I get the following exception.

"RPC Message addColumnToViewsRequest1 in operation addColumnToViews1 has an invalid body name addColumnToViews. It must be addColumnToViews1"

Is the objects created from the WSDL incorrect?

Had a look the WSDL and it seems that there are two 'addColumnToViews' operations defined.

When I modified the generated class objects to 'addColumnToViews1' for one of them, the services worked.

Is the WSDL for the AdministrationService correctly defined?
what's happen with YellowFin support team, no more answer. :(

Hi,

Sorry for not getting back to you sooner!

Unless we subscribe to forum posts, we are not notified when a response has been added. It looks like no-one had subscribed to the initial post, so it was not actively being looked at by anyone.

This isn't a common occurrence, but has happened before, which is the reason why we will be moving towards a new forum in the near future.

I guess you have managed to solve your issue, though to answer your question. The WSDL is correct, however we use an older version of Axis so when using .net you just need to make a few modifications as mentioned here : Dot Net integration



However...you could use JAX and not worry about using AXIS and any compatibilities.


Enabling JAX webservices...

This is how you enable JAX services in Yellowfin 6.3:
You'll have to add this to your web.xml file:



com.sun.xml.ws.transport.http.servlet.WSServletContextListener




WebServices

com.sun.xml.ws.transport.http.servlet.WSServlet



WebServices
/webservices/*



This goes within the root node in the web.xml file.
Actually... this looks like it is just commented-out in a standard 6.3 install.

Once you have done this... you should be able to hit the JAX webservices at: http:///webservices/Hello

It will display something like this:

Forum image



That's all you should need to do...
Connect your clients to the listed WSDL URLs.


2. Using the included JSP webservice examples


The webservice examples exist in:
Yellowfin/development/examples/webservices

To use these copy the JSPs copy them to Yellowfin/appserver/webapps/ROOT
You will need to modify the JSPs to connect to the correct Yellowfin webservice end-point.
A good example can be found in these JSPs:

ws_mobile_binary.jsp
ws_mobile_home.jsp
ws_mobile_login.jsp
ws_mobile_logoff.jsp
ws_mobile_image.jsp

Copy these to the ROOT directory.

You will need to edit ws_mobile_home.jsp and ws_mobile_login.jsp.
In ws_mobile_home.jsp update these details to point to you Yellowfin instance:

<%

String Host = "localhost";
int Port = 8080;
String Username = "admin";
String Password = "test";
String AdminLocation = "/services/AdministrationService";
String ReportLocation = "/services/ReportService";

%>

In ws_mobile_login.jsp update these details to point to you Yellowfin instance:

<%

String Host = "localhost";
int Port = 8080;
String Username = "admin@yellowfin.com.au";
String Password = "test";
String Location = "/services/AdministrationService";
String vsLocation = "/services/VersionService";

%>


Once you have updated these details, you can hit ws_mobile_login.jsp in your browser...
See the screen shots attached of these pages in action.
Hope this information helps, and please let us know your findings/tests.

Regards,
David