我有一个Web应用程序,我正在使用Maven。我没有在项目中实现Spring MVC。
该项目有一个实现的REST控制器,工作正常。 我需要将Google Dart集成到应用程序中。
我正在使用此dart-maven-plugin,我在“src / main / dart”下面有Dart代码。现在我已经抛出Dart教程代码(盗版徽章),我正试图让它工作。
这些是src / main / dart
下的文件我希望能够将项目.war文件部署到Tomcat中并能够访问localhost:8080 / testapplication / piratebadge.html
我是否需要将此html文件添加到我的web.xml中?
这是web.xml供参考
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name>TestProject</display-name>
<servlet>
<servlet-name>controller</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>jersey.config.server.provider.packages</param-name>
<param-value>test.controller</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>controller</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
</web-app>
答案 0 :(得分:1)
自从我使用Java / Maven以来已经有很长一段时间了。
基本上,您可以在任何目录中开发Dart应用程序。您只需使用pub build
生成deployable并将输出(在build/web
中生成)视为Java / Maven项目中的任何静态内容。
在开发过程中它有点复杂。如果可以在服务器应用程序中设置跨源头,则可以连接到Java REST服务器。您只需要维护两种配置,在这些配置中,您可以使用相对URL连接到生产中加载Dart应用程序的服务器,但在开发中,您必须使用绝对URL。
为此你可以使用像Dart: How to use different settings in debug and production mode?
这样的东西您也可以将Dart源包目录放在Java项目中,并将其视为静态内容。但路径仍然不同,因为开发在yourpackage/web
中,构建输出在yourpackage/build/web
中生成。
从Java应用程序提供Dart应用程序时,您必须使用特定的Launch配置才能进行调试。 这里有更多信息:Dart best practices for develop and production