我正在使用java GWT 2.4来编写Web应用程序。
我想将自定义css样式附加到DataGrid,但是编写css文件路径时遇到问题。 以下是我的代码:
interface DataGridResources extends DataGrid.Resources
{
@Source(value = { DataGrid.Style.DEFAULT_CSS,
"filepath/myDataGridStyle.css" }) // I should put the correct css file path here.
DataGrid.Style dataGridStyle();
}
myDataGridStyle.css文件与我的接口类不在同一个文件中。 基本上文件分发如下:
MyWebProject
- > SRC
---> com.test.javafiles
------> test1.java
------> test2.java
- > war(在同一级别的src文件中)
---> WEB-INF
---> myDataGrid.css(这是我的css文件所在的位置。它位于war文件下。所有css样式都在这个文件中。)
myDataGrid.css位于WAR文件下,该文件位于项目文件的根目录下。所以我的问题是如何将源文件路径重定向到正确的位置。
我的css文件放在WAR文件中,该文件与src文件的级别相同。例如,我的接口文件放在myproject / src / com / test / javafiles中。 my myDataGridStyle.css放在myproject / war / myDataGridStyle.css中。如何为此编写文件路径?
最好的问候
答案 0 :(得分:1)
将* .css文件放在war文件夹中是不可能的。 * .css文件必须驻留在java包中(我更喜欢将它放在与接口相同的包中,这样就可以相对引用该文件)。 css文件将被编译到您的GWT应用程序中。这就是为什么没有必要在战争中提供你的css文件。另一个原因是css资源可以在css代码中使用由编译器替换的特殊构造。但是,在this中查看详细信息是不可能的。
所以看起来应该是这样的:
interface DataGridResources extends DataGrid.Resources
{
@Source(value = { DataGrid.Style.DEFAULT_CSS,
"myDataGridStyle.css" }) // I should put the correct css file path here.
DataGrid.Style dataGridStyle();
}
和
- > SRC
---> com.test.javafiles
------> test1.java
------> test2.java
------> myDataGrid.css