簡體   English   中英

使用Java EE上傳文件錯誤

[英]Upload File Error using Java EE

以下代碼正在讀取錯誤消息。 特別是,當我鍵入Java代碼時,似乎不會將其識別為Java。例如,它不會自動縮進。 我正在使用JavaServer Faces。 有人知道我在哪里錯嗎?

<%@page import="java.io.*"%>
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>

<%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
<%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Welcome Page</title>
</head>
<body bgcolor="#2e8b57">
    <table style="width:100%">
<tr> 
    <td colspan="1">
    </td>
</tr>
<tr>
    <td style="width: 40%"><img src="image.JPG" width="700" height="550"     
    alt="image2"/></td> 
<td style="width: 40%"><font color="white" size="4"><br><b>text goes here</b><br>
<br>text goes here</font></a></td>
</tr>
<tr> 
<td colspan="1">
</td>
</tr>

</table>

    <form name="uploadForm" action="index.jsp" method="POST" enctype="multipart/form- 
    data">
        <% 
String saveFile = new String();
String contentType = request.getContentType();
if((contentType != null) && (contentType.indexOf("multipart/form-data")>=0)){
DataInputStream in = new DataInputStream(request.getInputStream());
int formDataLength = request.getContentLength();
byte dataBytes[] = new byte(formDataLength[]);
int byteRead = 0;
int totalBytesRead = 0;
while(totalBytesRead<formDataLength){
byteRead = in.read(dataBytes, totalBytes, totalBytesRead, formDataLength);
totalBytesREad +=byteRead;
}
String file = new String(dataBytes);
saveFile = file.substring(file.indexOf("filename=\n")+10);
saveFile = saveFile.substring(0, saveFile.indexOf("\n"));
saveFile = saveFile.substring(saveFile.lastIndexOf("\\")+1, saveFile.indexOf("\""));

int lastIndex = contentType.lastIndexOf("-");
String boundary = contentType.substring(lastIndex + 1, contentType.length();
int pos;

pos = file.indexOf("filename=\" ");
pos = file.indexOf("\n", pos)+ 1;
pos = file.indexOf("\n", pos)+ 1;
pos = file.indexOf("\n", pos)+ 1;

int startPos = ((file.substring(0, pos).getBytes().length;
int endPos = ((file.substring(0, boundaryLocation)).getBytes)).length;
}
}



        %>
        <input type="file" name="file" value="" />
        <input type="submit" value="Submit" name="submit" />
    </form>


</body>
</html>

錯誤日志如下。 第43行是包含<%的行:

org.apache.jasper.JasperException: PWC6033: Error in Javac compilation for JSP

PWC6197: An error occurred at line: 43 in the jsp file: /index.jsp
PWC6199: Generated servlet error:
'[' expected

PWC6197: An error occurred at line: 43 in the jsp file: /index.jsp
PWC6199: Generated servlet error:
illegal start of expression

PWC6197: An error occurred at line: 43 in the jsp file: /index.jsp
PWC6199: Generated servlet error:
';' expected

PWC6197: An error occurred at line: 43 in the jsp file: /index.jsp
PWC6199: Generated servlet error:
')' expected

PWC6197: An error occurred at line: 43 in the jsp file: /index.jsp
PWC6199: Generated servlet error:
')' expected

PWC6197: An error occurred at line: 43 in the jsp file: /index.jsp
PWC6199: Generated servlet error:
';' expected

PWC6197: An error occurred at line: 43 in the jsp file: /index.jsp
PWC6199: Generated servlet error:
';' expected

PWC6197: An error occurred at line: 43 in the jsp file: /index.jsp
PWC6199: Generated servlet error:
not a statement

PWC6199: Generated servlet error:
'try' without 'catch' or 'finally'

PWC6199: Generated servlet error:
illegal start of type

PWC6199: Generated servlet error:
illegal start of type

PWC6199: Generated servlet error:
';' expected

PWC6199: Generated servlet error:
<identifier> expected

PWC6199: Generated servlet error:
<identifier> expected

PWC6199: Generated servlet error:
class, interface, or enum expected

您可能缺少<%@頁面語言=“ java” contentType =“ text / html; charset = ISO-8859-1”%>。 您的JSP中還存在一些編譯問題(缺少括號等),您需要對其進行修復。

感謝Avijit

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM