首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GoogleAppEngine错误403

GoogleAppEngine错误403
EN

Stack Overflow用户
提问于 2012-07-19 02:37:27
回答 1查看 486关注 0票数 0

我已经对gae代码进行了编码:

index.html A表单

代码语言:javascript
复制
  <!-- 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"/>
 </form>
 </body>
</html>

web.xml

代码语言:javascript
复制
    <servlet>
        <servlet-name>FeedbackServlet</servlet-name>
        <servlet-class>at.wunderapps.servlets</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>
</web-app>

servlet:

代码语言:javascript
复制
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("apps@gmail.com",
                    "Es FUNKTIONIERT!!!"));
            msg.addRecipient(Message.RecipientType.TO, new InternetAddress("my.mail@mail.com", "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.");
    }
}

当我做localhost时,我得到:

HTTP错误403

访问/时出现问题。原因:

代码语言:javascript
复制
FORBIDDEN

为什么?

附言:我在windows7上运行它。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-19 06:04:19

html页面没有指定servlet的路径,因此容器使用默认的/。

使用

代码语言:javascript
复制
<input type="submit" name="submit" value="Send Request" action="/feedback"/>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11548121

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档