java - Can't read a google static map via HtmlUnit -


i trying read static map google maps on following url.

this works fine web browser, when try htmlunit unexpectedpage result. know means?

according javadoc of unexpectedpage, you're receiving unexpectedpage because server returns unexpected content type. if check returned header in htmlunit can see contains: content-type=image/png

here's little application retrieves image url:

import java.awt.image; import java.io.ioexception; import java.io.inputstream;  import javax.imageio.imageio; import javax.swing.imageicon; import javax.swing.jframe; import javax.swing.jlabel;  import com.gargoylesoftware.htmlunit.unexpectedpage; import com.gargoylesoftware.htmlunit.webclient;  /** small test application used fetch map. */ public class fetchmapswingapp extends jframe {    /** serial id. */    private static final long serialversionuid = 1920071939468904323l;     /**     * default constructor.     */    public fetchmapswingapp() {       // make sure application closes correctly       setdefaultcloseoperation(javax.swing.windowconstants.exit_on_close);        // map trying read       string url = "http://maps.googleapis.com/maps/api/staticmap?center=55.690815,12.560678&zoom=15&size=400x500&sensor=false";       // fetch image       image image = fetchmap(url);        // add image jframe , resize frame.       add(new jlabel(new imageicon(image)));       pack();    }     /**     * fetch image on given url.     *      * @param url     *            image location     * @return fetched image     */    private image fetchmap(string url) {       image image = null;       webclient webclient = new webclient();       webclient.setthrowexceptiononscripterror(false);        try {          // url returns png file!          unexpectedpage page = webclient.getpage(url);          inputstream inputstream = page.getinputstream();          // read stream image          image = imageio.read(inputstream);       } catch (ioexception e) {          e.printstacktrace();       }        return image;    }     /**     * start of application.     *      * @param args     *            arguments main method     */    public static void main(string args[]) {       java.awt.eventqueue.invokelater(new runnable() {          @override          public void run() {             new fetchmapswingapp().setvisible(true);          }       });    } } 

Comments

Popular posts from this blog

linux - Using a Cron Job to check if my mod_wsgi / apache server is running and restart -

actionscript 3 - TweenLite does not work with object -

jQuery Ajax Render Fragments OR Whole Page -