dcsimg
HTTP POST image upload
1 posts in topic
Flat View  Flat View
TOPIC ACTIONS:
 

Posted By:   Anonymous
Posted On:   Tuesday, July 6, 2010 10:57 AM

Hi, I am trying to call a http POST from a java app running locally the same way a html form would to upload an image to a website and read the return page. I think the problem at the moment is that the receiving php script isn't getting the incoming data as a .png file the code is below. Where I am going wrong? Thanks A. HTML form looks like this. Here is my current java code. package mainApp; import java.awt.image.BufferedImage; import java.io.*; import java.net.*; import javax.imageio.ImageIO;    More>>

Hi,

I am trying to call a http POST from a java app running locally the same way a html form would to upload an image to a website and read the return page.
I think the problem at the moment is that the receiving php script isn't getting the incoming data as a .png file the code is below.

Where I am going wrong?


Thanks

A.



HTML form looks like this.


			










Here is my current java code.


			

package mainApp;

import java.awt.image.BufferedImage;
import java.io.*;
import java.net.*;

import javax.imageio.ImageIO;


public class ServletCom {

public static void main(String[] args)
throws Exception
{

HttpURLConnection conn = null;
BufferedReader br = null;
DataOutputStream dos = null;
DataInputStream inStream = null;

InputStream is = null;
OutputStream os = null;
boolean ret = false;
String StrMessage = "";
String exsistingFileName = "filepath/flower.png";


String lineEnd = "
";
String twoHyphens = "--";
String boundary = "***232404jkg4220957934FW**";

File photo = new File(exsistingFileName );


int bytesRead, bytesAvailable, bufferSize;

byte[] buffer;

int maxBufferSize = 1*1024*1024;


String responseFromServer = "";

String urlString = "http://site.com/upload.php";


try
{
//------------------ CLIENT REQUEST

FileInputStream fileInputStream = new FileInputStream( new
File(exsistingFileName) );

// open a URL connection to the Servlet

URL url = new URL(urlString);


// Open a HTTP connection to the URL

conn = (HttpURLConnection) url.openConnection();

// Allow Inputs
conn.setDoInput(true);

// Allow Outputs
conn.setDoOutput(true);

// Don't use a cached copy.
conn.setUseCaches(false);

// Use a post method.
conn.setRequestMethod("POST");

conn.setRequestProperty("Connection", "Keep-Alive");

conn.setRequestProperty("Content-Type", "multipart/form-data;boundary="+boundary);
conn.setRequestProperty ("Content-Length", "1234");

dos = new DataOutputStream( conn.getOutputStream() );


dos.writeBytes(twoHyphens + boundary + lineEnd);
dos.writeBytes("Content-Disposition: form-data; name="upfile";"
+ " filename="" + "flower.png" +""" + lineEnd);
dos.writeBytes(lineEnd);




// create a buffer of maximum size

bytesAvailable = fileInputStream.available();
bufferSize = Math.min(bytesAvailable, maxBufferSize);
buffer = new byte[bufferSize];


// read file and write it into form...

bytesRead = fileInputStream.read(buffer, 0, bufferSize);
while (bytesRead > 0)
{
dos.write(buffer, 0, bufferSize);
bytesAvailable = fileInputStream.available();
bufferSize = Math.min(bytesAvailable, maxBufferSize);
bytesRead = fileInputStream.read(buffer, 0, bufferSize);
}

// send multipart form data necesssary after file data...

dos.writeBytes(lineEnd);
dos.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd);

// close streams

fileInputStream.close();
dos.flush();
dos.close();


}
catch (MalformedURLException ex)
{
System.out.println("From ServletCom CLIENT REQUEST:"+ex);
}

catch (IOException ioe)
{
System.out.println("From ServletCom CLIENT REQUEST:"+ioe);
}


//------------------ read the SERVER RESPONSE


try
{
inStream = new DataInputStream ( conn.getInputStream() );
String str;
while (( str = inStream.readLine()) != null)
{
System.out.println("Server response is: "+str);
System.out.println("");
}
inStream.close();

}
catch (IOException ioex)
{
System.out.println("From (ServerResponse): "+ioex);

}

}

}

   <<Less

Re: HTTP POST image upload

Posted By:   Anonymous  
Posted On:   Tuesday, July 27, 2010 04:01 AM

I give you some useful links that helps you to solve the java coding problems and the links are-
1)http://www.idevelopment.info/data/Programming/java/PROGRAMMING_Java_Programming.shtml
2)http://java.sun.com/docs/codeconv/
3)http://codingforums.com/showthread.php?t=14571.
About | Sitemap | Contact