我正在尝试在GeoServer中使用CSS样式设置点层的样式。
Geoserver版本2.11.3构建自Tomcat:8-jre8
docker容器(从以下repo派生:https://github.com/oscarfonts/docker-geoserver)
我更新的docker文件(将geoserver版本更新到2.11.3,并增加了一些更多的字体):
FROM tomcat:8-jre8
MAINTAINER Oscar Fonts <oscar.fonts@geomati.co>
ENV GEOSERVER_VERSION 2.11.3
ENV GEOSERVER_DATA_DIR /var/local/geoserver
ENV GEOSERVER_INSTALL_DIR /usr/local/geoserver
# Uncomment to use APT cache (requires apt-cacher-ng on host)
#RUN echo "Acquire::http { Proxy \"http://`/sbin/ip route|awk '/default/ { print $3 }'`:3142\"; };" > /etc/apt/apt.conf.d/71-apt-cacher-ng
# Microsoft fonts
# RUN echo "deb http://httpredir.debian.org/debian jessie contrib" >> /etc/apt/sources.list
# RUN set -x \
# && apt-get update \
# && apt-get install -yq ttf-mscorefonts-installer \
# && rm -rf /var/lib/apt/lists/*
# kj@19.7.2017 -- add other fonts
# based on https://github.com/meteofi/docker-geoserver
ENV NOTO_FONTS="NotoSans-unhinted NotoSerif-unhinted NotoMono-hinted"
ENV GOOGLE_FONTS="Open%20Sans Roboto Lato Ubuntu"
# Install Google Noto fonts
RUN mkdir -p /usr/share/fonts/truetype/noto && \
for FONT in ${NOTO_FONTS}; \
do \
wget -nv https://noto-website.storage.googleapis.com/pkgs/${FONT}.zip && \
unzip -o ${FONT}.zip -d /usr/share/fonts/truetype/noto && \
rm -f ${FONT}.zip ; \
done
# Install Google Fonts
RUN \
for FONT in $GOOGLE_FONTS; \
do \
mkdir -p /usr/share/fonts/truetype/${FONT} && \
wget -nv -O ${FONT}.zip "https://fonts.google.com/download?family=${FONT}" && \
unzip -o ${FONT}.zip -d /usr/share/fonts/truetype/${FONT} && \
rm -f ${FONT}.zip ; \
done
# Native JAI & ImageIO
RUN cd /usr/lib/jvm/java-8-openjdk-amd64 \
&& wget http://download.java.net/media/jai/builds/release/1_1_3/jai-1_1_3-lib-linux-amd64-jdk.bin \
&& tail -n +139 jai-1_1_3-lib-linux-amd64-jdk.bin > INSTALL-jai \
&& chmod u+x INSTALL-jai \
&& ./INSTALL-jai \
&& rm jai-1_1_3-lib-linux-amd64-jdk.bin INSTALL-jai *.txt \
&& wget http://download.java.net/media/jai-imageio/builds/release/1.1/jai_imageio-1_1-lib-linux-amd64-jdk.bin \
&& tail -n +215 jai_imageio-1_1-lib-linux-amd64-jdk.bin > INSTALL-jai_imageio \
&& chmod u+x INSTALL-jai_imageio \
&& ./INSTALL-jai_imageio \
&& rm jai_imageio-1_1-lib-linux-amd64-jdk.bin INSTALL-jai_imageio *.txt
# GeoServer
ADD conf/geoserver.xml /usr/local/tomcat/conf/Catalina/localhost/geoserver.xml
RUN mkdir ${GEOSERVER_DATA_DIR} \
&& mkdir ${GEOSERVER_INSTALL_DIR} \
&& cd ${GEOSERVER_INSTALL_DIR} \
&& wget http://sourceforge.net/projects/geoserver/files/GeoServer/${GEOSERVER_VERSION}/geoserver-${GEOSERVER_VERSION}-war.zip \
&& unzip geoserver-${GEOSERVER_VERSION}-war.zip \
&& unzip geoserver.war \
&& mv data/* ${GEOSERVER_DATA_DIR} \
&& rm -rf geoserver-${GEOSERVER_VERSION}-war.zip geoserver.war target *.txt
# Enable CORS
RUN sed -i '\:</web-app>:i\
<filter>\
<filter-name>CorsFilter</filter-name>\
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>\
</filter>\
\
<filter-mapping>\
<filter-name>CorsFilter</filter-name>\
<url-pattern>/*</url-pattern>\
</filter-mapping>\
\
<init-param>\
<param-name>cors.support.credentials</param-name>\
<param-value>true</param-value>\
</init-param>' ${GEOSERVER_INSTALL_DIR}/WEB-INF/web.xml
# Tomcat environment
ENV CATALINA_OPTS "-server -Djava.awt.headless=true \
-Xms768m -Xmx1560m -XX:+UseConcMarkSweepGC -XX:NewSize=48m \
-DGEOSERVER_DATA_DIR=${GEOSERVER_DATA_DIR}"
ADD start.sh /usr/local/bin/start.sh
CMD start.sh
EXPOSE 8080
产生错误的样式定义:
/* @title red point */
* {
mark: url(https://raw.githubusercontent.com/mapbox/maki/master/icons/industry-15.svg);
mark-mime: "image/svg";
}
[@scale < 2000000] {
mark-size: 30;
}
[@scale > 2000000] [@scale < 4000000] {
mark-size: 15;
}
[@scale > 4000000] {
mark-size: 7.5;
}
/* @title dark yellow point */
* {
mark: symbol(square);
mark-size: 6px;
:mark {
fill: #99cc00;
}
}
主要错误似乎是:java.lang.NoClassDefoundError:无法在org.apache.batik.bridge.bridge.bridgeContext初始化类org.apache.batik.bridge.cursorManager。
我相信CSS样式在某一时刻起作用,所以我倾向于认为这是我语法的一个问题。对此问题的任何协助都将不胜感激。多谢了。
@Andrea Aime从geoserver-users邮件列表中找到了以下解决方案:https://solveme.wordpress.com/2017/07/24/java-awt-awterror-assistive-technology-not-found-org-gnome-accessibility-atkwrapper-when-running-jasper-reports/
将这一行添加到我的dockerfile修复了这个问题:
RUN sed -i 's/^assistive_technologies=/#&/' /etc/java-8-openjdk/accessibility.properties
在我按照教程将ShapeFile导入geoserver并尝试预览后,我发现输出图像不正确,而在选择openlayers或png、jpeg、gif时,日志中没有错误。图像就像一张被墨水染色的地图。 但是,当我以PDF格式输出图层时,图像是正常的。。。。 除SRS外,所有配置均为默认配置。 网址http://localhost:7070/geoserver/mygis/wms?service=WMS
问题内容: 我刚刚开始使用最新的Java7 SDK在IntelliJ中构建JavaFX应用程序。 我已经使用Oracle Scene Builder构建了界面,所有内容都可以运行并在预览中显示良好,但是当我尝试编译程序时,出现以下错误 根据JavaFX Documentation判断,我的FXML中的行似乎无效。 有人知道我为什么收到此错误吗?(如果我删除了指向样式表的链接,则程序可以正常编译,因
Epoch 图表使用 css 设置填充颜色、笔画等。默认情况下,图表使用 D3分类颜色。您可以轻松地覆盖这些默认颜色或创建您自己的自定义类别。 主题 Epoch 以主题的形式安排类似于图表的样式。主题可以通过特殊的类名添加到任何HTML容器中。目前,Epoch船有两个内置主题: epoch-theme-default-基于d3分类颜色的默认主题 epoch-theme-dark-黑色背景下使用的主
主要内容:GWT CSS样式 介绍,GWT CSS样式 常用API,GWT CSS样式 主要和次要风格,GWT CSS样式 关联CSS文件,GWT CSS样式 示例GWT CSS样式 介绍 GWT 小部件依赖于级联样式表 (CSS) 进行视觉样式设置。默认情况下,每个组件的类名是gwt-<classname>。 例如, Button 小部件具有gwt-Button的默认样式,类似的方式 TextBox widest 具有gwt-TextBox的默认样式。 为了给所有按钮和文本框更大的字体,您可以
我正在使用GTK3开发一个简单的程序,并尝试使用GtkCssProvider为特定的小部件(片段)设置CSS样式: 字体属性设置正确,但边距和颜色不。我没有任何CSS解析错误。如果我使用g_object_set()函数来设置(例如)边距,那么一切工作都很好: 有什么想法,怎么了?CSS的东西?也许有更好的方法来使用GtkTextView属性(文本和小部件颜色)?我也尝试了GtkInspector工
本文向大家介绍Bosun 嵌入式模板和CSS样式,包括了Bosun 嵌入式模板和CSS样式的使用技巧和注意事项,需要的朋友参考一下 示例 您可以将另一个模板主体嵌入到模板中,{{template "mysharedtemplate" .}}以重复使用共享的组件。这是一个创建标题模板的示例,该模板可以在所有其他模板主体的顶部重复使用。它还使用CSS来对输出进行样式化,以便于阅读。请注意,所有<sty