which version of GeoTools are you using? I'm pretty sure we fixed this
(bogus) warning at last years FOSS4G code sprint.

Ian

On 11 July 2016 at 08:05, Julian Hagenauer <[email protected]> wrote:

> Hello,
>
> I wrote a small test application which updates the MapContent of a
> JMapPane several times in sequence. Almost always I get the following
> warning/error message:
>
> Jul 11, 2016 8:25:58 AM org.geotools.map.MapContent finalize
> SCHWERWIEGEND: Call MapContent dispose() to prevent memory leaks
>
> Why that? I actually call dispose every time before I set the MapContent.
> Probably I am updating the JMapPane in a wrong way? Or maybe there it is
> necessary to do some synchronization?
>
> Thanks
> Julian
>
> Here is the small test program to reproduce the warning/error:
>
> public class JMapPaneTest extends JFrame {
>
>  public JMapPane mp;
>
>  public JMapPaneTest() {
>   mp = new JMapPane();
>   mp.setRenderer(new StreamingRenderer());
>   mp.setMapContent(new MapContent());
>
>   add(mp);
>   setSize(400,400);
>   setVisible(true);
>  }
>
>  public void updateMP() {
>   GeometryFactory gf = new GeometryFactory();
>   SimpleFeatureTypeBuilder typeBuilder = new SimpleFeatureTypeBuilder();
>   typeBuilder.setName("Points");
>   typeBuilder.add("the_geom",Point.class);
>
>   SimpleFeatureBuilder featureBuilder = new
> SimpleFeatureBuilder(typeBuilder.buildFeatureType());
>   Random r = new Random();
>   DefaultFeatureCollection fc = new DefaultFeatureCollection();
>   for( int i = 0; i < 1000; i++ ) {
>    Point p = gf.createPoint(new Coordinate(r.nextDouble(),r.nextDouble()));
>    featureBuilder.set("the_geom", p);
>    fc.add( featureBuilder.buildFeature(""+fc.size()));
>   }
>
>   MapContent mc = new MapContent();
>   Symbolizer sym = new StyleBuilder().createPointSymbolizer();
>   mc.addLayer(new FeatureLayer(fc, SLD.wrapSymbolizers(sym)));
>   mc.setViewport( new MapViewport(fc.getBounds()));
>   mp.getMapContent().dispose();
>   mp.setMapContent(mc);
>  }
>
>  public static void main(String[] args) {
>   JMapPaneTest t = new JMapPaneTest();
>   for( int i = 0; i < 1000; i++)
>    t.updateMP();
>   System.exit(1);
>  }
> }
>
>
>
>
>
> ------------------------------------------------------------------------------
> Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
> Francisco, CA to explore cutting-edge tech and listen to tech luminaries
> present their vision of the future. This family event has something for
> everyone, including kids. Get more information and register today.
> http://sdm.link/attshape
> _______________________________________________
> GeoTools-GT2-Users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users
>
>


-- 
Ian Turton
------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
GeoTools-GT2-Users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users

Reply via email to