Java + Windows authentication with IIS Web service external service

Hi all

We have plugin from web client that has a user interface a java dataproviders. These data providers are written for data of a REST api c# hosted in IIS. This API uses windows authentication to authenticate users.

Here is what they call the api in java code

last URL url = new URL (path);

final HttpsURLConnection connection = url.openConnection () (HttpsURLConnection);

connection.setSSLSocketFactory (ClientCertificateHelper.getSSLSocketFactory ());

connection.setHostnameVerifier (ClientCertificateHelper.getHostnameVerifier ());

connection.setRequestMethod ("GET");

connection.setUseCaches (false);

connection.setDoOutput (true);

connection.setInstanceFollowRedirects (true);

last answer String = getResponse (connection);

As you can see we do not explicitly set all user for this request. What we have seen in the past, is that when suppliers of calls to the api of c# java database, it passes the domain computer account (domainname\machinename$) as the user. (The WebClient vCenter service works as 'local system').  And that worked very well.

However, there is a single environment that it is a failure.  We get the following error when calling the external API.

[00:17:38.719 2013-12-13] [ERROR] data-service-pool-506 System.err java.io.IOException: authentication failure

[00:17:38.719 2013-12-13] [ERROR] data-service-pool-506 System.err to sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown_Source)

[00:17:38.719 2013-12-13] [ERROR] data-service-pool-506 System.err to sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown_Source)

According to the newspapers IIS the incoming user name is empty. Under its weight, which means anonymous requests. (Or the failure of the negotiation of authentication. The order of authentication in IIS providers is Negotiate, NTLM).

Could someone please give some ideas to solve this problem?

Is it possible to make that call as the user logged on to the web client?

Any help on this is really appreciated because we're stuck with this error.

-Thank you

Unfortunately, you cannot swap the JRE versions like that.  We still use Java 1.6 because of some of our libraries need.  Updating JRE could break things.

You will need to find another way to perform authentication, as the use of the value of samlTokenXml that I mention.

Tags: VMware

Similar Questions

  • What is the difference between Windows Web Server VS. Windows 7 with IIS

    What is the difference between Windows Web Server VS. Windows 7 with IIS

    Hello

    Your question is more complex than what is generally answered in the Microsoft Answers forums. It is better suited for Windows Server on TechNet Forum. Please post your question in the TechNet Forums Windows Server général.

  • Another possibility to communicate with the web service other than the SOAPS in Adobe Reader

    Hi team

    It is another alternative method to communicate with the web service other than the SOAPS using Java script in Adobe Reader.

    Thank you

    Bala

    Yes, you can use FDF/XFDF to send data to the server and report information in the document. Take a look at the Doc.submitForm () method using the FDF/XFDF parameter: DC-Acrobat SDK Documentation - Doc.submitForm () you'll need fields for send/receive form data, but these can be hidden.

  • Problem of DH handshake with the web service using ColdFusion 7 and 8 after java update 8

    ColdFusion 7 and 8 are provided with a variant of JRE1.6.

    I have a script that has consumed a web service for years with success.  Last week, the web service provider updated their version of Apache and Java on the server java 1.8 (or java-8).

    I could no longer consume the web service once the web service provider updated to Apache and Java and would be the following error DH keypair every time that I try to consume the service:

    -----------------

    AxisFault

    faultCode: {http://schemas.xmlsoap.org/soap/envelope/} Server.userException

    faultSubcode:

    faultString: javax.net.ssl.SSLException: java.lang.RuntimeException: could not generate keypairs DH

    faultActor:

    faultNode:

    faultDetail:

    {}http://xml.apache.org/axis/} stackTrace:javax .net .ssl .SSLException: java.lang.RuntimeException: could not generate keypairs DH

    at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:190)

    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1591)

    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1554)

    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1537)

    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1130)

    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1107)

    at org.apache.axis.components.net.JSSESocketFactory.create(JSSESocketFactory.java:186)

    to org.apache.axis.transport.http.HTTPSender.getSocket (HTT... ''

    -----------------

    I asked the service provider web, why it would stop working and how we can solve this problem.  They suggested that upgrade to the latest version of Java on my server running ColdFusion.  I did some research and found the problem to be with the amount of memory allocated to the variable containing the encryption key.

    The big problem is when I tried to update java on this particular server (Windows Server 2003), the installation has returned a messaged stating that he could not run on the older operating system and I need to update my OS to install java.

    Does anyone have a workaround in ColdFusion 7 or 8 that you can establish the DH handshake using Java 1.6 on your local server while consuming a web service on a server using Java 1.8?

    Hi, frank000000,

    I know that we had a serious problem with any Java 7 after update 25.  They are off a lot of network permissions and other things, for safety, that used to be available in versions prior to the update 25.  But it's while we were in CF Server 9.

    Since we switched to CF Server 10 (making sure that we got the CF Installer provided with Java 8), we had very few issues related to Java.

    It seems strange to me that the upgrade to 1.8 host while your server is 1.6 would cause problems.  It could very well be something else.  I would like to ask the host for documentation describing exactly how/why their 1.8 may cause interference with your 1.6.

    HTH,

    ^_^

  • two-way communication with the web service

    I need help with a problem with web services on 8.6.  I do not know if this is possible.

    I have a web service that works very well.  At this point all it defines a Boolean value.

    For the test, I'm just using IE to see the data.  This works.  I can see the Boolean value change each time I send a 0 or 1 value through the URL.

    My problem is this: when I change the Boolean value, I can't read the value of another application of IE.  In other words, I want to be able to open IE twice in two different windows.  When I change a value of an Internet Explorer session, I want to see the value changes in the other session of IE (after refresh).  From now on, it seems that each session of Internet Explorer is a separate instance of the web service.  How can I edit a Boolean value, and read this variation by another IE session?

    My cause is hopeless?  Are web services 'read only '?  Any help would be appreciated.

    Bad form for the double post but the forum wouldn't let me edit my post:

    This VI is a good example of a global LabVIEW 2 style. The registry value at offset uninitialized loop will be persist appealed to the other of this VI. So when the game is true the value of data is stored in the shift register. When all is false the value of the shift register is returned unchanged. Make sure you have 'Keep VI in memory' checked in the configuration of your web service.

    You could do the same thing without parameters selected using two screws separated

  • Problem with the web service call

    I use ajax with json to call webservice but its not working with the localhost url in the emulator of the ripple. If I use an ip address or external url does not call the webservice.

    I also tried with BlackBerry, webservice does not.

    can someone guide me how to call the Web service?

    Thank you

    Sundaram

    Your file config.xml needs the ip address or the url in the "whitelist".  Use the access for that tag.  for example:

    
    

    The piece above is not secure because it whitelists ALL------* areas.  You can put your url in the uri.

  • Update Windows problem with the Bits Service and error 0 x 80070057

    The service status: problem with the Bits Service

    Error 0 x 80070057

    Original title: Windows Update problems

    Hi Dexter,

    Can I know the KB # the update fails?

    What is the question pertaining to a specific or all update updates?

    What antivirus software you use on your computer?

    To resolve this problem, see the following article:

    Difficulty errors Windows Update corruption as 0 x 80070002 and 0 x 80070057

    Hope the helps of information. Get back to us with more information to help.

  • Problem with creating Web Service Client using Oracle JDeveloper

    Hi all

    I am trying to create a Web Service Client using Oracle JDeveloper. The property of the compiler of the project I updated JRE 1.4

    When I run the web service client, he gives me a lot of errors saying:
    ' Error (32.2): annotations are not supported in - source 1.4'

    I wonder why JDeveloper uses annotations even after that I set the compiler property to 1.4

    I'm following this link to create the Web service client:
    http://www.Oracle.com/technetwork/developer-tools/forms/WebServices-forms-11g-094111.html

    Any help in this regard would be greatly appreciated.

    Thank you
    Scott.

    Scott, when you run the proxy Web service in JDeveloper, you will see a bunch of jars listed in the classpath in the Journal JDeveloper window.
    All of these classes must be in the classpath of your server when the class is deployed there.
    Note that by default, I don't think they are going to be included in the JAR that you build for the proxy when you deploy.

  • hidden field fill with xml - Web service call

    Hello world

    I developed a web service, my web service method expects an xml string.

    I have a new data connection, which is my wsdl file...

    Now, my challenge is how to fill in this field with the xml of my form, so that my my method can manupulate it.

    Secondly, the same button that calls my web service for the e-mail form once the web service has been called, send the form in PDF format.

    You'll really appreciate your help.

    ACE

    You can use the command to populate a field with the XML of the form below.

    FieldName.rawValue = xfa.data.saveXML ("pretty");

    To run the Web service and then send an email

    1. first place binding the Web service Execute button and make it invisible / hidden

    2. place a normal button on the form and in the writing code click event to call the Web service and then send the e-mail.

    Call the click event of the button webservice

    WebserviceExecuteButton.execEvent ("click");

    Send an email

    event.target.submitForm ({cURL: "mailto:" + strToAddress + "?"}) subject = "+ strSubject +"& body ="+ strMessage, cSubmitAs:"PDF", cCharset:" utf - 8 "});"

    Replace the names with your form variables in the above line.

    Thank you

    Srini

  • Binded fields associated with separate Web Service requests

    Hello

    I want to create a data connection that allows the user to select attributes about 2000. Currently, my web service operation request takes an ID value and returns an object encapsulating these attributes of 2000.
    If for example I have an attribute 'firstName', is it possible to have 2 instances of this field on my form but associated with the different application identifiers?
    If so, how can I go about it?

    Thank you.

    I guess the workitemID is unique to servce... OK done call eachweb. So actually you do two different web service calls and want to link the name in the same field, but keep the data of the previous call right?

    Paul

  • Problems with the Web Service using XML in Flex

    Hello

    I use a ColdFusion CFC, which is configured to generate an XML string. It runs on ColdFusion MX 6.1 and is configured as a remote web service. I tested the call and it returns the string XML fine when it is called from another method of Flex unfounded. My problem is this simple Flex application to call the same function via a service web, I wrote below. I cannot get to the exit results, keeps showing as NULL. I can't use the HTTP of Flex appeal for remote access because I'm not under MX7. Does anyone know what is wrong with my code? BTW, I would do the work of cross - domain.xml file to call the cfc, let me know if you want to test and I can add your domain name. Thank you!

    <? XML version = "1.0" encoding = "utf-8"? >
    "" < mx:Application xmlns:mx = ' http://www.adobe.com/2006/mxml ' layout = "absolute" >

    <! - set Web Service to get the XML data of course catalog - >
    < mx:WebService
    ID = "cd".
    "WSDL =" http://training.wonderware.com/components/courses.cfc?wsdl "
    Load = "CD.getCourseCatalogXML.Send ()" "
    showBusyCursor = "true" fault = "Alert.show (event.fault.message), 'Error' ' result =" cdResult (event) ">"
    < mx:operation name = "getCourseCatalogXML" resultFormat = "e4x" >
    < mx:request >
    < IDCalendrier > 3 < / IDCalendrier >
    < / mx:request >
    < / mx:operation >
    < / mx:WebService >

    < mx:Script >
    <! [CDATA]
    Import mx.controls.Alert;
    Import mx.rpc.events.ResultEvent;
    Import mx.rpc.events.FaultEvent;

    [Bindable]
    public var outputString:String

    public void cdResult(event:ResultEvent):void
    {
    outputString = event.result as String
    }
    []] >
    < / mx:Script >

    < mx:Canvas horizontalScrollPolicy = "off" verticalScrollPolicy = "off" >
    < mx:Text width = '100% ' paddingLeft = "4" paddingRight = paddingTop "4" = "4" >
    < mx:text > OUTPUT: {outputString} < / mx:text >
    < / mx:Text >
    < / mx:Canvas >

    < / mx:Application >

    Thank you very much! I do not have the notion that the HTTPService is indded just an HTTP call. So yes that it a much simpler way to call just ColdFusion to return the XML string to the application. No reason to use Flash Remoting or CFCS etc... and certainly not a web server. This made the turn that I called a HTTPService now what charges by coldfusion page that returns XML and bam, works well with e4x result etc... Thanks tracy!

  • Problem running the report with the Web Service and BI Publisher

    Hello

    In fact, I'm trying to run a report of Bi Publisher via the Web Service.
    I use the following documents:
    -http://download.oracle.com/docs/cd/E10415_01/doc/bi.1013/e10416/bip_webservice_101331.htm
    -"How to integrate Oracle BI Publisher via Web Services in the form of Oracke.

    Everything works fine. But when I try to copy the file on the local computer is 0 length. I use the method of "getReportBytes".
    Here's the code I tried with:

    String userName = "Administrator";
    String password = "Administrator";

    System.out.println ("calling" + myPort.getEndpoint ());
    System.out.println (myPort.validateLogin (username, Password));

    ReportRequest repReq = new ReportRequest();
    RepRes ReportResponse = new ReportResponse();

    repReq.setAttributeFormat ("pdf");
    repReq.setAttributeLocale("en-US");
    repReq.setAttributeTemplate ("sales world");
    repReq.setReportAbsolutePath ("/ Sales Manager/World Sales/World Sales.xdo");

    repRes = myPort.runReport (repReq, userName, passWord);
    System.out.println (repRes.getReportContentType ());

    Byte [] binaryBytes = repRes.getReportBytes ();
    OutputStream out = new FileOutputStream ("D:
    out.pdf");
    out. Write (binaryBytes);
    out. Close();
    System.out.println ("success for performance report');

    Thanks in advance.

    Hello

    I assume you are using 10.1.3.4. Otherwise, my index is not relevant to you...

    There is a new parameter in the web service API to set the size of the segment. HéLas is by default not so, the behavior is as in versions (not size segment... the entire document at once). If you set the size of segment-1, you should get your document. So, try adding
    repRequest.setSizeOfDataChunkDownload(-1);

    concerning
    Rainer

  • Results of long-term with the web service call process

    I'm starting a long-lived process that dragged out variables using a .net web service call. I would like to be able to get these output variables. I find all of the features in the JobManager service to do this... y at - it another way to do this? I am not above querying the Livecycle database...

    Thank you

    Mike

    It will work only after that the process is 'complete'.. then you need to check the status... .and when that is complete, then you can check the results.

    Paul

  • How to fill a datagrid with a web service result which is an array?

    I know how to fill a DataGrid to a CF of the web service that returns a query result. But what happens if I want to my CF component to run a query, then massage the data and back-is not a query - but a picture from the web service.

    Seems my two dimension table because ColdFusion has no column name, I need to create on the CF side name-value pairs or the side Flex. BTW, I prefer to use mx:webservice and not remoteObject.

    Any ideas on the best way to fill a datagrid from an array?

    Thank you.

    (Sorry for the previous double post).

    A colleague found the answer for me. I hope this saves someone else from 5 days of anquish!

    When a ColdFusion component returns an array of structures (not the result of a query), redesign the table as an arrayCollection collection throws an error.

    IT DOES NOT WORK:
    acSpeeds = new ArrayCollection (wsSpeeds.oneNode.lastResult);

    THIS WORKS!
    acSpeeds = wsSpeeds.oneNode.lastResult;

    It seems that a table generated by ColdFusion structures is already a collection arrayCollection 'official '!

    Hope this helps someone.

  • Call COM components as a service Windows 7 (NOT A WEB SERVICE!) via LabVIEW

    First of all, what I'm trying to do is completely new terrority for me and I've looked everywhere, impossible to find a solution. I have reviewed the following resources and tried to get out but nothing helps:

    [1] ActiveX and LabVIEW
    http://www.NI.com/white-paper/2983/en

    [2] ActiveX and COM - part I
    http://www.NI.com/white-paper/2981/en

    [3] tutorial: Configure the node of the function of the library Call to call a Simple DLL
    https://decibel.NI.com/content/docs/doc-9069

    My problem is that I got a COM which was installed to run as a Windows 7 service, always running in the background (service.msc). So far, it seems only to be an intuition that you shoul dbe able to use:

    (A) ActiveX in LabVIEW to call the COM object by name or the .dll file.

    (B) call the .dll file of the service using the library function node call

    I see the COM running as a service if I (service.msc). I see also two .dll files associated with this service (they have the same base name as the service running). Let's say the service is called "TestService" then the other two .dll are called "TestServicePK.dll" and "TestServiceXY.dll." In test ActiveX and node library function call, I tried to call the two .dll files. When I tried the ActiveX method I get "the selected file is not a .NET, type library or executable automation assembly."

    Also COM binaries were made in C++, but if I understand well there should not be a problem at least for the library call feature.

    This seems to be a case of corner.

    Actually COM! = ActiveX!

    COM uses ActiveX to implements its objects and also to instantiate and control their but COM is simply a binary model of the API and some functions to control the instantiation and the lifecycle of objects COM, nothing else. The only way to access COM objects correctly (when no ActiveX type library is provided) is to have a C (++) compiler that can analyze the header files according to interface with the interface object methods. All ActiveX controls use COM to implement the interface calling of their objects, but also adds a type library in the DLL and a few other niceties such as the properties of the object. This type library describes how to match the properties and methods of the ActiveX for real virtual table COM interface pointers.

    LabVIEW lists this type library in order to be able to interface to the COM, Active X objects interface. A pure COM library is missing all these subtleties. If LabVIEW would be favourable to a COM interface node, its configuration should allow the configuration of all the things that describes the type library. This configuration would require a lot of manual configuration details, similar to what the library node call, only a magnitude more complex. If this is not really an option.

    If your server COM DLL does not an ActiveX type library interface, the only way to access it in LabVIEW must obtain such a type library as an external interface (not possible for all COM components) or to wrap the COM DLL server by a traditional DLL, which translates the methods standard COM exported C functions then that may be called by the node library call.

    Creating a library of types from a single COM DLL is more or less unfeasable. You should at least have the original IDL file that was used to create the interface com write a C (++) wrapper for your object COM is very probably the most practical approach, but will require some good C programming knowledge as well as experience handling COM objects in C code.

Maybe you are looking for

  • Urgent need WXP-driver for Satellite A210-14

    In any area of download I only find Vista driver. Please tell me a way to get to the A210-14.Thanks for your help quickly! Greetings Chrissie2007

  • LabVIEW 3.1 file

    Hi all I'm a newbie in the present. We have an old verryyyy PC with labview 3.1 on it and last week, we bought the new Labview software. When I tried open registered 3.1 on my new 8.6 file I got MSG that my file is too old. So my question is: is it p

  • error code A 80071, 91

    I get error code A 80071, 91 I saw there was a response where I have to type something in the cmd screen, but I don't know how to log on as an administrator and even less follow these instructions! My laptop has not updated for over a year!

  • HP Officejet 6500 E710n-z

    Have scanned, copied & printed on the machine for a couple of years, but last night in the pouring rain, water dripping from the ceiling on the top of the Cabinet where the printer is sitting.  Water seemed to have gotten in the printer but the color

  • Multi-tenant IOS Firewall and security even subinterfaces 9.0

    Hi all I'm so used to< 8.3="" and="" am="" having="" great="" difficulty="" getting="" an="" environment="" working="" properly="" so="" i'm="" now="" going="" to="" leverage="" the="" cisco=""> We set up a network with clients behind a pair of 5510