Fórum

problema com portlet de google maps

andré cordazzo brunelli, modificado 15 Anos atrás.

problema com portlet de google maps

New Member Postagens: 2 Data de Entrada: 01/04/09 Postagens Recentes
olá a todos!

eu estou criando um portlet para o meu estágio na faculdade em que precisa do Google Maps. Como é necessário uma interação com um banco de dados, eu preferi tentar o Google Web Toolkit (GWT), que permite escrever o código em Java e na hora da compilação transforma em Javascript. No entanto, o mapa não está aparecendo. Eu já fiz um portlet que rodasse uma aplicação básica em GWT; já fiz um outro que mostra um mapa, só que com Javascript; tamém já fiz uma aplicação que roda Google Maps em GWT, só que não era em um portlet, e sim uma aplicação web comum.
A minha tentativa é basicamente a seguinte:

primeiramente, eu crio um portlet;
no view.jsp, escrevo o seguinte código:
<%
    final String BASE_URL="/TesteLiferayGWTMaps";
    final String MODULE_NAME="org.yournamehere";
    final String LAB_4500_DIV="TESTELIFERAYGWTMAPS_DIV"; //must be shared with the class MainEntryPoint
%>
    
<meta name="gwt:module" content="<%=BASE_URL%>/<%=MODULE_NAME%>.Main">

<script language="javascript" src="<%=BASE_URL%>/<%=MODULE_NAME%>.Main/<%=MODULE_NAME%>.Main.nocache.js"></script>
<link rel="stylesheet" href="<%=BASE_URL%>/resources/stylesheet.css" type="text/css" media="screen">
<div id="<%=LAB_4500_DIV" %>&gt; </div>


isso direciona a aplicação para o arquivo Main.gwt.xml:

<module>
	<inherits name="com.google.gwt.user.User" />
    <inherits name="com.google.gwt.maps.GoogleMaps" />
    <script src="http://maps.google.com/maps?file=api&amp;v=2.x&amp;key=ABQIAAAAjU0EJWnWPMv7oQ-jjS7dYxSPW5CJgpdgO_s4yyMovOaVh_KvvhSfpvagV18eOyDWu7VytS6Bi1CWxw"></script>
    <inherits name="com.google.gwt.user.theme.standard.Standard" />
	<entry-point class="org.yournamehere.client.MainEntryPoint" />
	<!-- Do not define servlets here, use web.xml -->
</module>


o código acima adiciona as bibliotecas necessárias para a aplicação GWT rodar. A tag
<script src="”http://maps.google.com/maps?..."></script>
é a chave para acessar o Google Maps. A tag
<entry-point class="”org.yournamehere.client.MainEntryPoint”/"></entry-point>
diz que a aplicação deve acessar o arquivo MainEntryPoint.java:

package org.yournamehere.client;

import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.maps.client.MapWidget;
import com.google.gwt.maps.client.control.MapTypeControl;
import com.google.gwt.maps.client.control.SmallMapControl;
import com.google.gwt.maps.client.event.MapClickHandler;
import com.google.gwt.maps.client.geom.LatLng;
import com.google.gwt.maps.client.overlay.Marker;
import com.google.gwt.maps.client.overlay.Overlay;
import com.google.gwt.user.client.ui.RootPanel;

public class MainEntryPoint implements EntryPoint {

    public void onModuleLoad() {
        MapWidget mapWiget = new MapWidget(LatLng.newInstance(48.136559, 11.576318), 13);
        mapWiget.setSize("500px", "300px");

        mapWiget.addControl(new SmallMapControl());
        mapWiget.addControl(new MapTypeControl());

        mapWiget.addMapClickHandler(new MapClickHandler() {

            public void onClick(MapClickEvent e) {
                MapWidget sender = e.getSender();
                Overlay overlay = e.getOverlay();
                LatLng point = e.getLatLng();


            }
        });
        RootPanel.get("TESTELIFERAYGWTMAPS_DIV").add(mapWiget);

    }
}


Eu já coloquei na MainEntryPoint.java, junto com o código acima, um outro que inclui um simples botão, como eu já fiz em outra aplicação que rodou. Porém, nem o botão aparece. Eu estou usando Netbeans 6.5, Liferay Portal Server 5.1.x/5.2.x e Liferay 5.2.2 com Tomcat 5.5 (também já tentei com o Tomcat 6.0 com os mesmos resultados).
andré cordazzo brunelli, modificado 15 Anos atrás.

RE: problema com portlet de google maps

New Member Postagens: 2 Data de Entrada: 01/04/09 Postagens Recentes
ah, só para completar: quando eu tento fazer o deploy, o portlet que aparece é um outro, o que eu fiz com GWT que roda normal. já tentei tudo quanto é tipo de gambiarra e não consigo mudar isso. é como se estivesse anexando outro projeto quando eu faço deploy.