我編碼一個簡單的Web應用程序GAE應該給我一個電子郵件從一種形式:谷歌應用程序引擎 - 錯誤503_Service不可用
我已編碼的GAE代碼:
的index.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>A form</title>
</head>
<body>
<form action="/feedback" method="post">
<!-- Simple text field -->
<label for="name">Name </label>
<input type="text" name="name"/>
<br/>
<!-- Email -->
<label for="email">Email </label>
<input type="email" name="email"/>
<br/>
<!-- Textarea -->
<label for="description">Description </label>
<textarea name="description" cols="50" rows="5">Type your comment here</textarea>
<br/>
<input type="submit" name="submit" value="Send Request" action="/feedback"/>
</form>
</body>
</html>
的web.xml
<servlet>
<servlet-name>FeedbackServlet</servlet-name>
<servlet-class>at.wunderapps.servlets.FeedbackServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>FeedbackServlet</servlet-name>
<url-pattern>/feedback</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
的servlet:
import java.io.IOException;
import java.util.Properties;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@SuppressWarnings("serial")
public class FeedbackServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String name = req.getParameter("name");
String description = req.getParameter("description");
String email = req.getParameter("email");
Properties props = new Properties();
Session session = Session.getDefaultInstance(props, null);
String msgBody = name + description + email + " :EMAIL";
try {
Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress("[email protected]",
"Es FUNKTIONIERT!!!"));
msg.addRecipient(Message.RecipientType.TO, new InternetAddress("[email protected]", "Your name"));
msg.setSubject("Bestellung");
msg.setText(msgBody);
Transport.send(msg);
} catch (Exception e) {
resp.setContentType("text/plain");
resp.getWriter().println("Something went wrong. Please try again.");
throw new RuntimeException(e);
}
resp.setContentType("text/plain");
resp.getWriter().println(
"Thanks you for your feedback. An Email has been send out.");
}
}
當我做本地主機我得到:
HTTP ERROR: 503
Problem accessing /. Reason:
SERVICE_UNAVAILABLE
和我得到的例外是:
拋出java.lang.ClassNotFoundException:at.wunderapps.servlets
CRITICAL:javax.servlet.ServletContext日誌:不可用 javax.servlet.Unavai lableException:at.wunderapps.servlets
2012年7月20日13點13分46秒com.google.apphosting.utils.jetty.JettyLogger警告WARNUNG:失敗FeedbackServlet:顯示java.lang.NullPointerException 2012年7月20日13點13分46秒com.google.apphosting.utils.jetty.JettyLogger警告WARNUNG:上下文啓動失敗 c[email protected]495c998a {/,C:\ Users \ Desktop \ mailservice \ war} java.lang .NullPointerException
我想問題可能是inde.html找不到我的servlet。但爲什麼,導致web.xml似乎沒事了?你能幫我麼?
PS:我在Windows 7