Help coderanch get a
new server
by contributing to the fundraiser
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

condition in servlet??

 
Ranch Hand
Posts: 342
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi all friends,
Iam developing one application(front end swing , back end servlet and http protocol through urlconnection) for data transfer from one destination to another.And application have facility of suspend of one file in between and start another new file from scratch and can resume that file which is stopped in between later.Now for that I want to put condition in servlet so that it can recognise two situation:-
1.if it is new file it can write in the file and 2.if it is partial file it can append into the file by opening the file in append mode.
But I couldn't decide what will be the syntax of condition.Can any one plz suggest me how i can put conditions.Any help will be highly appreciated.Below r my codes:-
RecvServlet.java:-
=================
public class RecvServlet extends HttpServlet {
public static final String BASE_DIR = "d:\\temp";
File baseFile;
public void init() throws ServletException {
super.init();
baseFile = new File(BASE_DIR);
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.sendError(response.SC_NOT_ACCEPTABLE, "Must use POST method.");
}
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException
{
String filename;
filename = request.getParameter("name");
String path;
path = request.getParameter("path");
File outfile = new File(filename);
if (path != null && filename != null) {
outfile = new File(path, filename);
System.err.println("Final output file: " +
outfile.getAbsolutePath());
}
DataInputStream dis;
dis = new DataInputStream(request.getInputStream());
OutputStream os;
os = new BufferedOutputStream(new FileOutputStream(outfile));
int cc;
byte [] buf = new byte[512];
long lim, tot = 0;
lim = dis.readLong();
try {
System.err.println("Reading " + lim + " bytes...");
for(cc = dis.read(buf, 0, 512);
cc > 0 && tot < lim;
cc = dis.read(buf, 0, 512))
{
os.write(buf, 0, cc);
tot += cc;
System.err.print("+" + cc + "(" + tot + ")");
if (tot >= lim) break;
}
}
catch (IOException ie) {
try { os.close(); } catch (Exception e2) { }
System.err.println("Exception during file transfer!");
}
System.err.println("Read " + tot + " bytes.");
os.close();
response.setContentType("text/plain");
PrintStream pos = new PrintStream(response.getOutputStream());
pos.println(tot);
}
}
Regards
Bikash
 
Greenhorn
Posts: 27
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi,
You can try the following:
File fil = new File(filename);
FileOutputStream fos=null;
if (fil.exists()){
// file is already there so append to it
fos = FileOutputStream(fil,true);
}
else{
fos=new FIleOutputStream(fil);
}

hope this helps,
Lester.
[ March 12, 2002: Message edited by: Les Dsouza ]
 
"To do good, you actually have to do something." -- Yvon Chouinard
We need your help - Coderanch server fundraiser
https://coderanch.com/t/782867/Coderanch-server-fundraiser
reply
    Bookmark Topic Watch Topic
  • New Topic