0

我正在使用 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 文件与我的接口类不在同一个文件中。基本上文件分布如下:

我的网络项目

->源

---> com.test.java 文件

------> test1.java

------> test2.java

->war(同级src文件)

---> 网络信息

---> myDataGrid.css(这是我的css文件所在的位置。它就在war文件下。所有css样式都在这个文件中。)

myDataGrid.css 位于我的项目文件根目录下的 WAR 文件下。所以我的问题是如何将源文件路径重定向到正确的位置。

我的 css 文件放在与 src 文件相同级别的 WAR 文件中。比如我的接口文件放在myproject/src/com/test/javafiles。我的 myDataGridStyle.css 放在 myproject/war/myDataGridStyle.css 中。我该如何为此编写文件路径?

最好的祝福

4

1 回答 1

1

将 *.css 文件放入 war 文件夹是不可能的。*.css 文件必须驻留在 java 包中(我更喜欢将它与接口放在同一个包中,这样可以相对引用该文件)。css 文件将被编译到您的 GWT 应用程序中。这就是为什么在战争中没有必要让您的 css 文件可用的原因。另一个原因是 css 资源可以在 css 代码中使用由编译器替换的特殊结构。但无法在详细信息中使用这些

所以它应该是这样的:

 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();
 }

和:

->源

---> com.test.java 文件

------> test1.java

------> test2.java

------> myDataGrid.css

于 2012-07-09T08:07:52.017 回答