Pregunta

Estoy tratando de añadir mapas de Google en mis páginas JSP utilizando el taglib Googlemaps.

He añadido este experto en mi pom

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

Esto incluye entonces la biblioteca googlemaps-0.98c bajo mis bibliotecas de proyecto en NetBeans, que hace clic derecho y Manually install artifact seleccionado y encuentra el archivo googlemaps.jar que había descargado.

He añadido a continuación, esto en mi archivo taglibs

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

Y a continuación, han incluido este en el que realmente quiero mostrar un mapa en mi 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>

Pero cuando cargo mi aplicación, me sale el siguiente error.

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

¿Me he perdido algo simple? Soy incapaz de ver lo que he hecho mal hasta ahora ..

¿Fue útil?

Solución

En general, cuando se hace esto:

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

Usted está básicamente tratando de decir "la carpeta / WEB-INF / googlemaps tiene un montón de archivos .tag de empleo" -. Cuáles no

Simplemente navegar por la documentación confirma esto - dice que usted debe utilizar este (tenga en cuenta el uso de la extensión TLD):

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

Fuente: http://www.lamatek.com/GoogleMaps/documentation.jsp #installation

Otros consejos

Si define el alcance de proporcionada en su pom no se incluye en el archivo de la guerra y la taglib no se encontrará. Debe cambiar el alcance para compilar o en tiempo de ejecución.

El URI no debe ser /WEB-INF/googlemaps.tld. Debe coincidir con el valor en la etiqueta <uri> en el googlemaps.tld.

Abrir el googlemaps.jar, encontrar el googlemaps.tld, y encontrar la etiqueta <uri>. Ese es el URI que necesita.

ACTUALIZACIÓN:

Me acaba de descargar el googlemaps.jar. Estoy incorrecta; el URI es de hecho <uri>/WEB-INF/googlemaps.tld</uri>.

Esto sugiere que hay que extraer el archivo googlemaps.tld y ponerlo bajo / WEB-INF en su contexto web, ya sea de guerra o explotado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top