File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Security and the fly likes Need Java client to Upload files to Sharepoint 2010 using Kerberos authentication Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of JavaScript Promises Essentials this week in the JavaScript forum!
JavaRanch » Java Forums » Engineering » Security
Bookmark "Need Java client to Upload files to Sharepoint 2010 using Kerberos authentication" Watch "Need Java client to Upload files to Sharepoint 2010 using Kerberos authentication" New topic
Author

Need Java client to Upload files to Sharepoint 2010 using Kerberos authentication

poli reddy
Greenhorn

Joined: Nov 21, 2007
Posts: 15
Hi friends,

Need help on Java client to upload file to Sharepoint which is using KERBEROS authentication.

We have sharepoint server which is upgraded to 2010 version and is configured with Kerberos authentication. Earlier sharepoint version was using NTLM authentication for which I have javaq client program to upload files from local system. Since sharepoint got upgraded with Kerberos authentication, I need to modify current NTLM versioned java program to use Kerberos. I got code snippet for authentication and connectivity which is working fine. I am able to read Sharepoint URL and download a specific file though java program. Now I am trying upload file to Sharepoint but not getting the required java classes and jar files to be used for this.

I had Kerberos configuration setup using SPNEGO API to connect sharepoint.

Conf files:
krb5.conf
login.conf

API used to Kerberos Auth:
spnego-r7.jar


Connectivity:
SSLContext sc = SSLContext.getInstance("SSL");
sc.init(null, trustAllCerts, new java.security.SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
spnego.connect(new URL(spLocation));
System.out.println("spnego.getResponseCode():: "+spnego.getResponseCode());
if(spnego.getResponseCode() >= 200) {
log.debug("Authentication Successful");
}

File Read/Download:
java.io.BufferedInputStream in = new java.io.BufferedInputStream( spnego.getInputStream());
java.io.FileOutputStream fos = new java.io.FileOutputStream(outputFile);
java.io.BufferedOutputStream bout = new BufferedOutputStream(fos,1024);
byte[] data = new byte[1024];
int x=0;
System.out.println("4" + outputFile.length());
while((x=in.read(data,0,1024))>=0) {
bout.write(data,0,x);
}
bout.close();
in.close();


Kindly advise how to upload files to Sharepoint folder using java code. I searched many forums for hours but not getting exact code for File upload. Your advice on this much appreciated.

Thanks in advance.
poli reddy
Greenhorn

Joined: Nov 21, 2007
Posts: 15
Following code I am using for connectivity and File download. Please advise how to Upload file.

spnego = new SpnegoHttpURLConnection("spnego-client", <<sharepoint_user>>, <<sharepoint_password>>);

//New Lines added to omit SSL Handshake exception
TrustManager[] trustAllCerts = new TrustManager[]{
new X509TrustManager() {
public java.security.cert.X509Certificate[] getAcceptedIssuers(){
return null;
}
public void checkClientTrusted(java.security.cert.X509Certificate[] certs, String authType){
//No need to implement.
}
public void checkServerTrusted(java.security.cert.X509Certificate[] certs, String authType){
//No need to implement.
}
}
};
SSLContext sc = SSLContext.getInstance("SSL");
sc.init(null, trustAllCerts, new java.security.SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
spnego.connect(new URL(spLocation));
System.out.println("spnego.getResponseCode():: "+spnego.getResponseCode());
if(spnego.getResponseCode() >= 200) {
log.debug("Authentication Successful");
}
Darryl Burke
Bartender

Joined: May 03, 2008
Posts: 4658
    
    5

poli reddy, please BeForthrightWhenCrossPostingToOtherSites
http://www.java-forums.org/advanced-java/81487-need-java-client-upload-files-sharepoint-2010-using-kerberos-authentication.html
http://www.javaprogrammingforums.com/java-networking/31432-need-java-client-upload-files-sharepoint-2010-using-kerberos-authentication.html


luck, db
There are no new questions, but there may be new answers.
poli reddy
Greenhorn

Joined: Nov 21, 2007
Posts: 15

Sorry for cross post. Henceforth I will ensure to post only in one forum.

Please advise your suggestion on this: Uploading file to Sharepoint through Java client using Kerberos Authentication.
poli reddy
Greenhorn

Joined: Nov 21, 2007
Posts: 15
Any advice on this please?
poli reddy
Greenhorn

Joined: Nov 21, 2007
Posts: 15
Finally after 10 days of continuous research and search through many blogs, I got solution for my problem. I hope this helps someone needy:


 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Need Java client to Upload files to Sharepoint 2010 using Kerberos authentication