JSP Googlemaps taglib не найден, где я ошибся? - PullRequest
1 голос
/ 31 марта 2010

Я пытаюсь добавить Карты Google в мои JSP с помощью тега библиотеки Googlemaps.

Я добавил это в мой Maven POM

    <dependency>
        <groupId>com.lamatek</groupId>
        <artifactId>googlemaps</artifactId>
        <version>0.98c</version>
        <scope>provided<>/scope
    </dependency>

Затем включил библиотеку googlemaps-0.98c в мои библиотеки проектов в NetBeans, я щелкнул правой кнопкой мыши и выбрал Manually install artifact и нашел загруженный файл googlemaps.jar.

Затем я добавил это в мой файл taglibs

<%@taglib prefix="googlemaps" uri="/WEB-INF/googlemaps" %>

А потом включил это, где я действительно хочу показать карту на моем JSP

    <googlemaps:map id="map" width="250" height="300" version="2" type="STREET"
                    zoom="12">
        <googlemaps:key domain="localhost" key="xxxx"/>
        <googlemaps:point id="point1" address="74 Connors Lane" city="Elkton"
                          state="MD" zipcode="21921" country="US"/>
        <googlemaps:marker id="marker1" point="point1"/>
    </googlemaps:map>

Но когда я загружаю свое приложение, я получаю следующую ошибку.

org.apache.jasper.JasperException: /jsp/dashboard.jsp(1,1) /jsp/common/taglibs.jsp(6,56) PWC6117: File "/WEB-INF/googlemaps" not found

root cause

org.apache.jasper.JasperException: /jsp/common/taglibs.jsp(6,56) PWC6117: File "/WEB-INF/googlemaps" not found

Я что-то упустил? Я не могу определить, что я до сих пор сделал неправильно ..

Ответы [ 3 ]

2 голосов
/ 31 марта 2010

Обычно, когда вы делаете это:

<%@taglib prefix="googlemaps" uri="/WEB-INF/googlemaps" %>

По сути, вы пытаетесь сказать, что "папка / WEB-INF / googlemaps содержит кучу файлов .tag для использования", чего у вас нет.

Простой просмотр документации подтверждает это - он говорит, что вы должны использовать это (обратите внимание на использование расширения tld):

<%@ taglib uri="/WEB-INF/googlemaps.tld" prefix="googlemaps" %> 

Источник: http://www.lamatek.com/GoogleMaps/documentation.jsp#installation

1 голос
/ 31 марта 2010

URI не должен быть /WEB-INF/googlemaps.tld. Оно должно соответствовать значению в теге <uri> в googlemaps.tld.

Откройте googlemaps.jar, найдите googlemaps.tld и найдите тег <uri>. Это URI, который вам нужен.

ОБНОВЛЕНИЕ:

Я только что загрузил googlemaps.jar. Я не прав; URI действительно <uri>/WEB-INF/googlemaps.tld</uri>.

Это говорит о том, что вам нужно извлечь файл googlemaps.tld и поместить его в / WEB-INF в своем веб-контексте, будь то WAR или взорванный.

1 голос
/ 31 марта 2010

Если вы установите область действия, указанную в вашем pom, она не будет включена в файл war, и taglib не будет найден. Вы должны изменить область для компиляции или выполнения.

...