Solved

How to consume XML WSDL with Header Authentication?

Posted on 2010-11-29
3
1,366 Views
Last Modified: 2013-11-19
I have a web service I'm trying to program to.  I've used other web services (XML) fine, but this one is perplexing me; as it requires header authentication.

The CSHARP XML WSDL is:

http://api.zxxds.net/?wsdl&csharp

The documentation for it is at http://api.zedo.com/doc/

I'm interested in doing simple operations such as getChannel, and createChannel

Any help would be greatly appreciated....
0
Comment
Question by:adworldmedia
3 Comments
 
LVL 6

Accepted Solution

by:
r3nder earned 250 total points
ID: 34231308
Its just authentication - real simple
http://www.codeproject.com/KB/cpp/authforwebservices.aspx
Get channel is just
-------------------------------------------
public: static IChannel GetChannel( String name);
-------------------------------------------
CreateChannel() in code below



IChannelFactory<IRequestChannel> factory = binding.BuildChannelFactory<IRequestChannel>(bindingParams);
factory.Open();
EndpointAddress address = new EndpointAddress("http://localhost:8000/ChannelApp");
IRequestChannel channel = factory.CreateChannel(address);
channel.Open();

Open in new window

0
 
LVL 29

Assisted Solution

by:Kumaraswamy R
Kumaraswamy R earned 250 total points
ID: 34238246
0
 

Author Comment

by:adworldmedia
ID: 34257919
Thanks for the replies, but neither of them really are helping me much...  I've attached a snippet of java code, that does what I want.  I would need it converted to Asp.net C#.. any one that can help, thanks in advance!
import com.zedo.zapi.*;
import com.zedo.zapi.ZEDOAPIStub.*;
import javax.xml.namespace.QName;
import org.apache.axis2.AxisFault;

public class GetChannelTest {

    public static void main(String[] args) {
        GetChannelTest.getChannelTest();
    }

    private static void getChannelTest() {
        
        try {
          
            ZEDOAPIStub stub = new ZEDOAPIStub("http://api.zedo.com/v3/?wsdl&java");

                stub._getServiceClient().addStringHeader(new QName("http://api.zedo.com", "user", "zedoapi"),     "example@example.com");
                stub._getServiceClient().addStringHeader(new QName("http://api.zedo.com", "password", "zedoapi"),     "password");
            stub._getServiceClient().addStringHeader(new QName("http://api.zedo.com", "network", "zedoapi"),  "525");
            stub._getServiceClient().getOptions().setTimeOutInMilliSeconds(10 * 60 * 1000);
            
            GetChannel gc = new GetChannel();
            gc.setParam0(123123);
            Thread.sleep(5000);
            Channel c = stub.getChannel(gc).get_return();
    
            System.out.println("GET_CHANNEL COMPLETE!");
            System.out.println("PLEASE: " + c.getId() + " " + c.getName());

        } catch (Exception e) {
            System.err.println("ERROR: GET_CHANNEL FAILED!");
            System.err.println("Exception: " + e.getMessage());
            if (e instanceof AxisFault) {
                AxisFault af = (AxisFault) e;
                System.err.println("AxisFault's detail: " + af.getDetail());
                af.printStackTrace();
            } else {
                e.printStackTrace();
            }
        }
    }
}

Open in new window

0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Preface This is the third article about the EE Collaborative Login Project. A Better Website Login System (http://www.experts-exchange.com/A_2902.html) introduces the Login System and shows how to implement a login page. The EE Collaborative Logi…
Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…
HTML5 has deprecated a few of the older ways of showing media as well as offering up a new way to create games and animations. Audio, video, and canvas are just a few of the adjustments made between XHTML and HTML5. As we learned in our last micr…

856 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question