Web Service Client Accessing Java Web Service / Connection Aborted
Sep 27, 2010
I had a problem getting a VB.NET web service client to receive the response object from a Java web service.In the process of posting this question someone from another department volunteered some code written for a similar situation.I couldn't find this anywhere on the net so I'm completing my question to help others out.[code]The web service is Apache CXF with some Spring elements mixed in.
Here's the situation. I'm a Java developer. Another developer in our company wrote a web service for our clients. They wrote the service in Java. They also wrote a demo for creating a client to consume the web service in Java and it works just fine. I've been tasked with creating a web services client in VB.NET to do the same thing. It hasn't been going smoothly. The problem is that the web service requires that you send the username and password in the SOAP header and I can't figure out how to do that in Vb.NET. I looked at the following pages:
I am implementing a VB.NET desktop application which consumes a web service.
The web service implemented in Java and I currently using Tomcat on my localhost to host the web service.
The web service requires secure communication with the client and so I have followed instructions that outlined how to use Java's keytool.exe to create two .jks keystores (one for the client and one for the server) and then create two .cer certificates (one for the client and one for the server)
I have placed the keystores and certificates generate into the directory where the web service is expecting them (according to the instructions)
I have installed the certificates into TrustedPeople and have attempted to use the certificate by setting the ClientCredentials.ClientCertificates property like this:
I keep getting the following error message when I try to call any method:
An error was discovered processing the <wsse:Security> header
My problem is that I don't know how to use this in the VB.NET client application that is consuming the web service. I could be doing this completely wrong.
i have a Windows service that is hosting a WCF service through net.tcp and this is working great. I have also created a WCF service application. I am trying to add the net.tcp service reference to the service application. Then I add it to the GAC that goes ok but if I try to RegAsm the WCF service application to allow it to be called from Server.CreateObject I get the error:
Warning: Type library exporter encountered a type that derives from a generic class and is not marked as [ClassInterface(ClassInterfaceType.None)]. Class interfaces cannot be exposed for such types. Consider marking the type with [ClassInterface(ClassInterfaceType.None)] and exposing an explicit interface as the default interface to COM using the ComDefaultInterface attribute.
It does not work. I have tried to call it through a class library but this does not work either as the end point is not set correctly.
I have a VB2008 application which can control a windows service i.e. start, stop, pause etc. This runs ok on a Windows XP machine but not on a Win 7 machine (message is - Service error cannot open <service name> service on computer '.') ( if I stop the UAC then it runs ok ). It seems to be a rights issue,
Wrote a 'webservice' with Netbeans wizard, runs on glassfish. I added a reference using the wsdl to my .NET client, VB if it makes any difference.The issue is a SoapHeaderException.
I've tried writing the string in a soap envelope, but still receive the same message. So passing a string is kaputt, as it should be; why would the WS know to parse a string, and simply instantiating and calling the method from the object as if it were local isn't working the way I think it does.
We had plan to create a three tiered architecture database application, where the middle tier will be implemented using Web Service. We're going to use Linux for the server, so I think for the web service to be able to be implemented, we only had PHP/Java left. Is this right?
The constraint is, we're going to use VB.NET for the client application.We already had a two tiered VB.NET application from our last successfull database application. It use a lot of DataSet for the result of SQL execution. Now, what I had in mind, is a simple approach of converting all procedure that return a DataSet Object, to be a WebService method. But, because of this thinking, I don't think we can do it in Java/PHP. That is, we'll be enforce to use a ASP.NET approach. Is this correct? I assume my answer from this article Consuming a DataSet from an XML Web Service (ADO.NET)
If I have a custom windows service running on a server, is there anyway I can access the value of a property/variable within that service? For example, I would like to have a client vb program be able to "read" the value some variable from that service. A simple example would be the service would capture a boolean value of the success or failure of the last time it kicked off a process. I would then like to have a client windows app "connect" with the service and be able to read that boolean value.
How do you catch/access the info within the soapenv:Detail node when a WCF service call returns an error?? Catching the FaultException alone does not include it bu I can see the data in the service trace log.
I have an asp.net project that's compiled on a server. On that same server I have a windows service that's running methods referenced from the asp.net .dll. Everything works fine except for when the httpcontext.current object needs to be accessed. I'm fairly certain that the cause of the .current being null is that it's referencing the shared library without an actual instance of the site running. In a previous version of the service I was able to find a workaround in asp.net by not using the context, however that is now a last resort as much of the architecture of the site has changed. Is there anyway to create an instance of the site and simulate a current httpcontext for the purposes of the service?
i have a WPF application that uses a service reference to a web service.Now i have a GUI component that tracks the progress of this...But i seem to have some sort of bug here, it only occurs on some machines and not often..I start a call with MethodNameAsync and display the progress bar until the matching Completed event occurs.
some times i call 3 different async methods in a row but only the two of them get their Completed event raised so the GUI will be locked and the application has to be restarted.After being totally frustrated a few weeks i found the event AppDomain.CurrentDomain.FirstChanceException, so i hooked up to it and started logging all FirstChanceExceptions..
[Code]...
Fix this temporary by not using async methods and instead using a thread that will call them one by one.. now this is not a elegant solution, i should be able to use the async methods...
I have some clients calling my asmx service and I figure out to change my asmx to a Wcf service.How can my asmx clients call to my Wcf service without modify the client application?Maybe just a few changes in the config file...I can't expect than they compile their applications.
I have a solution in VS 2010: a WCF Service Library project ("NotifyService") and two Windows Forms projects, one for a server ("NotifyServer")and one for a client ("NotifyClient"). My goal is to have a duplex WCF service that will notify any number of connected clients when the server pushes out a notification. The clients do not need to communicate to the server except to subscribe and unsubscribe from the server's updates. However I seem to be running into problems nailing down the InstanceContext.
Since I'm setting everything up through code, there are no app.config files. The problem I'm having is that my Subscribe method is never called. When debugging, I get an error after stepping through that line (not an exception) that says "Unable to automatically step into the server. The debugger failed to stop in the server process." When I go back to my server form and click the button designed to raise an event on the callback clients, it steps into the NotifyService class but the _callbacks list is empty, meaning the Subscribe method either never ran, or it never ran on that instance.
I have fought with this for almost a week. This is nearly an identical copy, at least on the service-side, to what was described here, and I've compiled that and it works.
I have written a VB.NET windows service application. I installed it in my system using the Installutil.exe. But this is not available in the client's system because the .NET is not installed in that system.Is there any way to install the .NET windows service application without the Installutil ?
I'm trying to build a multithreaded SMPP client with VS2008 and I'm getting bogged down in threading. Basically my main parent thread will interact with the windows service scheduler, get registry settings, and get a list of SMPP servers to connect to. Then it will launch a thread for each SMPP connection, which will need to keep it's TCP socket open to receive messages with, so the thread must remain running even if there aren't any events happening (no messages to receive)... but I can't seem to get it figured out.
[Code]...
The Start sub in the oChannel object does run, but once that sub is finished running the thread ends. In the Start sub, it calls other code that initiates a connection to the remote SMPP server, but that code asynchronously waits for an event to be raised regarding the connection status. Once the sub finishes, the async connection being attempted doesn't seem to be able to pin the thread down.
I got this warning that I don't know what it means.Warning1 The service System.ComponentModel.Design.IInheritanceService already exists in the service container.Parameter name: serviceType00
I'm building a web service client using vb .net. The web service is secured with ssl, basic authentication and also requires client certificates. So I created a web reference in Visual Studio and provided the credentials:
Dim cred As New System.Net.NetworkCredential("usr", "passwd") Dim proxy As New SimpleFromLocal.simple proxy.Credentials = cred Console.WriteLine(proxy.helloWorld())
This works as expected, as long as I turn off mutual authentication on the server side.I added a client certificate like this:
Dim cert As X509Certificate = X509Certificate.CreateFromCertFile(certFile)proxy.ClientCertificates.Add(cert)
The certificate is loaded, but the web service call fails. I could post the exception, but it is in german, which is an issue on its own. It basically says: Authentication failed, because the remote site closed the connection.I tried debugging the ssl handshake on the server side and it looks like the client certificate is not transmitted.So what am I missing here? Is it required to install the client certificate on the local machine?Edit: The error thrown:
I am trying to communicate with a Windows service on a remote machine on the network but i keep getting an exception saying the following: "System.InvalidOperationException: Cannot open Service Control Manager on computer 'machine001'. This operation might require other priviledges. ---> System.ComponentModel.Win32Exception: Access is denied.
Is it possible to have a dotnet windows service which monitor other services and upon stop of any service, the monitoring service would be able to start the stopped service.
This is a bit of unusual problem that I'm experiencing, but recently one of the users of a production application started reporting errors in the system. These were traced to a 503 Service Unavailable error when making a call to a web service used by the application.
Now here's the odd part, only the one user is affected by this issue. Other users of the application have not reported any errors. When the user logged on to a different machine that worked for another user, they still received the error.
i was trying to make my service act dynamically... i have set time for my service about for 2 min ,if suppose it was doin huge amount of work means it will exceeds that 2 min time limit then we need to check the service condition if work is pending means we need to run that instance until upto finish.
public static void StartService(string serviceName, int timeoutMilliseconds) { ServiceController service = new ServiceController(serviceName);[code]............
In the past I had the indexing service installed on a Windows Server 2003 and used it to index files for my website. I did this by executing an OleDbCommand with a query and a connection string.How do I accomplish the same thing with the new "Windows Search Service" (Windows Server 2008) by using VB.NET? Does this work the same way so that I only need to change the Provider name which has been "MSIDXS.1" up to now? Case true, what is the new Provider name?
I need to query a web service that basic authentication, putting the username and password in the request header. My client is written in VB.NET Visual Basic Express Edition 2010. I've added the web service to the Service References. It has auto-generated the appropriate classes for me. [code]...
I need to return an error message to the client, if they have entered invalid data when calling my web service. So if my code is: [code]Is there a way to display a more user friendly error message (such as a message box or just the words "Invalid Order ID")?