event markerDrag

UI Components for JSF
Post Reply
Fernando
Posts: 19
Joined: 18 Feb 2011, 13:48
Location: Palma de mallorca, Spain

14 Dec 2011, 12:13

hello,

Has anyone tested the markerDrag event of the gmap component with last version of primefaces-3.0.RC1.jar?
I can add a marker, but the event markerDrag never occurs.

Code: Select all

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:p="http://primefaces.org/ui"> 

    <h:form id="mapform">

        <p:gmap center="#{shopsController.latitude}, #{shopsController.longitude}" zoom="15" 
                type="HYBRID" model="#{shopsController.draggableModel}" 
                style="width:600px;height:400px" widgetVar="mymap">  
            <p:ajax event="markerDrag" listener="#{shopsController.onMarkerDrag}" />                      
        </p:gmap>      
        
    </h:form>

</ui:composition>
thanks
jsf 2.0 (facelets)
primefaces-3.0.RC1.jar
redmond-1.0.2.jar

Fernando
Posts: 19
Joined: 18 Feb 2011, 13:48
Location: Palma de mallorca, Spain

14 Dec 2011, 18:35

sorry ... it work perfectly ... after clean and build

Fernando
Posts: 19
Joined: 18 Feb 2011, 13:48
Location: Palma de mallorca, Spain

14 Dec 2011, 20:38

sorry, again...

Now the event is fired but i get the next error:

INFO: java.lang.NullPointerException
java.lang.NullPointerException
at org.primefaces.component.gmap.GMap.queueEvent(GMap.java:272)
at org.primefaces.component.behavior.ajax.AjaxBehaviorRenderer.decode(AjaxBehaviorRenderer.java:43)
at javax.faces.component.behavior.ClientBehaviorBase.decode(ClientBehaviorBase.java:132)
at org.primefaces.renderkit.CoreRenderer.decodeBehaviors(CoreRenderer.java:380)
at org.primefaces.component.gmap.GMapRenderer.decode(GMapRenderer.java:42)
at javax.faces.component.UIComponentBase.decode(UIComponentBase.java:787)
at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1181)
at com.sun.faces.context.PartialViewContextImpl$PhaseAwareVisitCallback.visit(PartialViewContextImpl.java:506)
at com.sun.faces.component.visit.PartialVisitContext.invokeVisitCallback(PartialVisitContext.java:183)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1589)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1600)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1600)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1600)
at javax.faces.component.UIForm.visitTree(UIForm.java:344)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1600)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1600)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1600)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1600)
at com.sun.faces.context.PartialViewContextImpl.processComponents(PartialViewContextImpl.java:376)
at com.sun.faces.context.PartialViewContextImpl.processPartial(PartialViewContextImpl.java:252)
at javax.faces.context.PartialViewContextWrapper.processPartial(PartialViewContextWrapper.java:183)
at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:931)
at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:78)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1539)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
at shoppinglist.controllers.util.SessionFilter.doFilter(SessionFilter.java:61)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
at shoppinglist.controllers.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:32)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:330)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:174)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:828)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:725)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1019)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:662)

Any idea?

Thank's in advance

nbtafelberg
Posts: 6
Joined: 30 Nov 2011, 11:16

16 Aug 2012, 11:25

I'm getting the same thing. This worked yesterday!!!!

kukeltje
Expert Member
Posts: 9605
Joined: 17 Jun 2010, 13:34
Location: Netherlands

16 Aug 2012, 12:58

PLEEEEEEEEEEEEEEEEEEEEEEEAAAAAAAAAAAAAAAAAAAAAASSSSSSSSSSSSSSSSSSSSEEEEEEEEEEEEEEEEEE.....

viewtopic.php?f=3&t=1194

javixuhc
Posts: 2
Joined: 22 Aug 2012, 17:25

22 Aug 2012, 17:30

I have the same problem!!

XHTML

Code: Select all

<p:gmap model="#{edicionPuntoGeograficoAdminBean.puntoMapa}" 
    center="#{edicionPuntoGeograficoAdminBean.puntoGeografico.latitud}, #{edicionPuntoGeograficoAdminBean.puntoGeografico.longitud}"
    zoom="13" type="ROADMAP" style="width:600px; height:300px;">
						
    <p:ajax event="markerDrag" listener="#{edicionPuntoGeograficoAdminBean.position}" />
									
</p:gmap>
Method in my ManagedBean is ViewScoped

Code: Select all

	public void position(MarkerDragEvent event) {  
		
		Marker marker = event.getMarker();
		
		System.out.println("Hello Pepito??");
	}
PrimeFaces-3.3.1 | Tomcat 7.0.29 | Mojarra 2.1.7
Firefox 14.x
______________________________
Javier Hernández

javixuhc
Posts: 2
Joined: 22 Aug 2012, 17:25

23 Aug 2012, 10:53

I solved my problem :lol: :lol: !

Older Java Code:

Code: Select all

	public MapModel getPuntoMapa() {
		
		MapModel model = new DefaultMapModel();
		
		LatLng punto = new LatLng(
				getPuntoGeografico().getLatitud().doubleValue(),
				getPuntoGeografico().getLongitud().doubleValue());
			
		model.addOverlay(new Marker(punto, getPuntoGeografico().getNombre()));
		
		for (Marker marker : model.getMarkers()) {  
            marker.setDraggable(true);   
            
		}

		return model;
	}
New XHTML

Code: Select all

<p:gmap model="#{edicionPuntoGeograficoAdminBean.model}"
      center="#{edicionPuntoGeograficoAdminBean.puntoGeografico.latitud}, #{edicionPuntoGeograficoAdminBean.puntoGeografico.longitud}"
      zoom="13" type="ROADMAP" style="width:600px; height:300px;">
					
     <p:ajax event="markerDrag" listener="#{edicionPuntoGeograficoAdminBean.onMarkerDrag}" />
								
</p:gmap>	
New Java Code

Code: Select all

        private MapModel model;

	@PostConstruct
	public void init() {
		
		setModel(new DefaultMapModel());
		
		LatLng punto = new LatLng(
				getPuntoGeografico().getLatitud().doubleValue(),
				getPuntoGeografico().getLongitud().doubleValue());
			
		Marker marker = new Marker(punto, getPuntoGeografico().getNombre());
		marker.setDraggable(true);
		
		getModel().addOverlay(marker);
	}

	public void onMarkerDrag(MarkerDragEvent event) {  
		
		Marker marker = event.getMarker();
		
		System.out.println("Marker Dragged Lat:" + marker.getLatlng().getLat() + ", Lng:" + marker.getLatlng().getLng());  
	} 

       /**
	 * @return the model
	 */
	public MapModel getModel() {
		return model;
	}

	/**
	 * @param model the model to set
	 */
	public void setModel(MapModel model) {
		this.model = model;
	}
PrimeFaces-3.3.1 | Tomcat 7.0.29 | Mojarra 2.1.7
Firefox 14.x
______________________________
Javier Hernández

maghroum.hassen
Posts: 1
Joined: 15 Jan 2013, 17:05

15 Jan 2013, 17:23

Hi, i have same problem with last version primefaces-3.4.2.jar

XHTML

Code: Select all

<td>
      <p:gmap id="dialogAddGmap" center="36.879466,30.667648" zoom="13" type="ROADMAP"  model="#{MyPosBean.mapModel}" style="width:400px;height:400px">  
      <p:ajax event="markerDrag" listener="#{MyPosBean.onMarkerDrag}" update=":dialogAddForm:dialogAddGrowl,:dialogAddForm:tabViewAdd:dialogAddLatitude,:dialogAddForm:tabViewAdd:dialogAddLongitude"/>  
      </p:gmap>
</td>
Java

Code: Select all

public MyPosBean() {
        if(checkSession())
        {
            sessionBean = getSessionBean();
            session = initSession();
            
            Criteria criteria = session.createCriteria(PcCountry.class);
            criteria.addOrder(Order.asc("name"));
            pcCountryList = criteria.list();
            
            mapModel = new DefaultMapModel();
            
            LatLng coord1 = new LatLng(36.879466, 30.667648);
            Marker marker = new Marker(coord1, "Konyaalti");
            marker.setDraggable(true);
            
            mapModel.addOverlay(marker);
            
            pcPointOfSaleDataModel = new PcPointOfSaleDataModel(getPcPointOfSaleList());
        }
    }

public void onMarkerDrag(MarkerDragEvent event)
    {
        FacesContext facesContext = FacesContext.getCurrentInstance();
        Marker marker = event.getMarker();
        posLatitude = marker.getLatlng().getLat();
        posLongitude = marker.getLatlng().getLng();
        facesContext.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,"Lat:" + posLatitude + ", Lng:" + posLongitude, null));
    }
Thanks.

Post Reply

Return to “PrimeFaces”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 23 guests