如何将robots.txt添加到带有CDI集成的Vaadin 7应用程序?

时间:2013-08-02 16:35:42

标签: java jboss7.x vaadin cdi robots.txt

如何将robots.txt文件添加到Vaadin应用程序?

我发现几乎没有任何相关内容,但我发现没有支持这样的文件。

我正在使用Vaadin 7.1.1与JBoss 7.1.1和Vaadin-CDI-Integration。


我的解决方法是:通过向项目添加RobotsUI,可以访问网址http://localhost:8080/App/robots.txt

@CDIUI(value="robots.txt")
public class RobotsUI extends UI {

    @Override
    protected void init(VaadinRequest request) {
        // Send a response with mimetype 
        // `text/plain` with self defined content.
    }

}

我的问题是:我如何提供自我编辑的text/plain回复?

感谢您的帮助: - )

2 个答案:

答案 0 :(得分:2)

我通过向项目添加公共text/plain成功发布了HttpServlet

@WebServlet("/robots.txt")
public class RobotsServlet extends HttpServlet {

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.getWriter().write("Text...\n");
    }

}

答案 1 :(得分:1)

在Vaadin之外做,在vaadin servlet之前注册一个过滤器,如果是robots.txt,则返回你的机器人文件。或者添加一些静态资源服务servlet注册,让我们说/ static / *并将你的/robots.txt重定向绑定到UrlRewrite