安装geoserver rc 后会存在一些问题

问题1:

发布一个矢量图层并用openlayer进行加载失败 查了好久发现是因为用了POST请求矢量的问题 代码如下:

这里因为用到POST所以失败,当注释掉框出的代码则可以请求到WMS图层

问题2:对矢量图进行WFS查询查询的时候用ajax请求数据的时候,数据可以请求到,但是就是接收不到并且会进入ajax的error函数中,并且提示Networkerror

经过检查发现不是我的代码有问题而是因为这两个请求都存在跨域问题,而安装的geoserver存在跨域问题

解决办法:

下载最新的jar文件:

java-property-utils

cors-filter

将这两个文件放到geoserver-rc/webapps/geoserver/WEB-INF/lib 下然后修改geoserver-rc/webapps/geoserver/WEB-INF/web.xml

首先在与filter节点平级的位置写入下述代码

 <filter>
     <filter-name>CORS</filter-name>
      <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
      <init-param>
         <param-name>cors.tagRequests</param-name> 
         <param-value>true</param-value> 
     </init-param>
</filter>    
View Code

然后再filter-mapping平级的位置写入下述代码:

 <filter-mapping> 
   <filter-name>CORS</filter-name> 
   <url-pattern>/*</url-pattern>
 </filter-mapping>

完成后重启geoserver 就可以了