[Mapserver-users] MapServer and Java

Steve Lime steve.lime at dnr.state.mn.us
Tue Feb 11 17:31:38 EST 2003


--=_ABF4D1CD.90F1BD8A
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

See attached. It's pretty simple and certainly ripe for extension...

Steve

>>> "Zhang, William" <wzhang at c-cor.net> 02/11/03 04:09PM >>>
Steve,

I am quite interested in the source code of your java bean. Where can I =
take
a look at it?

Thanks,

William Zhang

Software Engineer
C-Cor.net
5673 Gibraltar Dr., Suite 100
Pleasanton, CA 94588
Phone: (925) 251-3019
Fax: (925) 467-0600
E-Mail: wzhang at c-cor.net=20


-----Original Message-----
From: Steve Lime [mailto:steve.lime at dnr.state.mn.us]=20
Sent: Tuesday, February 11, 2003 1:08 PM
To: mapserver-users at lists.gis.umn.edu; christian.schuster at rsag.ch=20
Subject: Re: [Mapserver-users] MapServer and Java


I wrote a simple java (bean) wrapper for the CGI version of MapServer that
would
allow the programmer to build a service call programatically and then =
submit
a request=20
that service. That combined with a simple template on the MapServer side
results in a
hash of parameters to be returned to the calling program. The base id,
extent, image
names and so on could be nabbed that way. MapServer could also respond =
with
straight
XML is so desired. Here's an example usage:

MapServerBean msb =3D new MapServerBean();
HashMap content;

msb.setMap("MAPFILE");
msb.setMapsize("500 500");
msb.setLayers("mypoints"); // multiple layers seperated by spaces

// points to add to the map (3rd column is a label)
msb.addPoint(492428.9862,4971809.3571,"55118","mypoints");
msb.addPoint(402100.0259,5134187.6075,"56425","mypoints");
msb.addPoint(293507.7264,5273181.9598,"56542","mypoints");
msb.addPoint(283147.0886,5188256.4327,"56501","mypoints");

try {
   content =3D msb.getMap();   =20
} catch (Exception e) {}

The template used by MapServer is something like:

mapext=3D[mapext]
img=3Dhttp://[host]:[port][img]

Seemed to work ok. Source is available if anyone cares...

Steve


Stephen Lime
Data & Applications Manager

Minnesota DNR
500 Lafayette Road
St. Paul, MN 55155
651-297-2937

>>> <christian.schuster at rsag.ch> 02/11/03 12:31AM >>>

Hi List,

My problem is that I am working on a WebApplikation based on Java. Now, we
also will need to include geographic pictures for references purposes. The
data are in PostgreSQL. Now, I have a working MapServer and I can bring up
the pictures using PostGIS. But what I would like is just to get the name
of the pictures (eq image, refimage, scalebar, legend) MapServer has
created which I can then load into to the WebApplikation with normal GET
calls to the server. I looked at Mapplet. But this is not really what I am
looking for. Is there a possibility to get the names of the picture
MapServer created?

Regards,

Christian Schuster

Rudolf Schuster AG
Postfach 277
CH - 3000 Bern 11

http://www.rsag.ch=20
++41 31 348 05 30

_______________________________________________
Mapserver-users mailing list
Mapserver-users at lists.gis.umn.edu=20
http://lists.gis.umn.edu/mailman/listinfo/mapserver-users=20


_______________________________________________
Mapserver-users mailing list
Mapserver-users at lists.gis.umn.edu=20
http://lists.gis.umn.edu/mailman/listinfo/mapserver-users


--=_ABF4D1CD.90F1BD8A
Content-Type: application/octet-stream; name="MapServerBean.java"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="MapServerBean.java"

cGFja2FnZSB1cy5tbi5zdGF0ZS5kbnI7CgppbXBvcnQgamF2YXguc2VydmxldC5odHRwLio7Cmlt
cG9ydCBqYXZhLmlvLio7CmltcG9ydCBqYXZhLm5ldC4qOwppbXBvcnQgamF2YS51dGlsLio7Cmlt
cG9ydCBvcmcuYXBhY2hlLm9yby50ZXh0LnBlcmwuKjsKCnB1YmxpYyBjbGFzcyBNYXBTZXJ2ZXJC
ZWFuIHsKICAgIHByaXZhdGUgZmluYWwgaW50IERFRkFVTFRfTlBPSU5UUz0xMDA7CgogICAgcHJp
dmF0ZSBQb2ludEZlYXR1cmUgcG9pbnRzW107CiAgICBwcml2YXRlIGludCBucG9pbnRzPTA7CiAg
ICAKICAgIHByaXZhdGUgU3RyaW5nIG1hcD1udWxsOwogICAgcHJpdmF0ZSBTdHJpbmcgc2VydmVy
PSJodHRwOi8vbWFwcy5kbnIuc3RhdGUubW4udXMvY2dpLWJpbi9tYXBzZXJ2My42IjsKICAgIHBy
aXZhdGUgU3RyaW5nIG1hcGV4dD1udWxsOwogICAgcHJpdmF0ZSBTdHJpbmcgbWFwc2l6ZT1udWxs
OwogICAgcHJpdmF0ZSBTdHJpbmcgbGF5ZXJzPW51bGw7CgogICAgcHVibGljIE1hcFNlcnZlckJl
YW4oKSB7IAoJdGhpcy5wb2ludHMgPSBuZXcgUG9pbnRGZWF0dXJlW0RFRkFVTFRfTlBPSU5UU107
CiAgICB9CiAgICAKICAgIHB1YmxpYyBNYXBTZXJ2ZXJCZWFuKGludCBucG9pbnRzKSB7Cgl0aGlz
LnBvaW50cyA9IG5ldyBQb2ludEZlYXR1cmVbbnBvaW50c107CiAgICB9CiAgICAKICAgIHB1Ymxp
YyB2b2lkIHNldE1hcChTdHJpbmcgbWFwKSB7IHRoaXMubWFwPW1hcDsgfQogICAgcHVibGljIHZv
aWQgc2V0U2VydmVyKFN0cmluZyBzZXJ2ZXIpIHsgdGhpcy5zZXJ2ZXI9c2VydmVyOyB9CiAgICBw
dWJsaWMgdm9pZCBzZXRNYXBleHQoU3RyaW5nIG1hcGV4dCkgeyB0aGlzLm1hcGV4dD1tYXBleHQ7
IH0KICAgIHB1YmxpYyB2b2lkIHNldE1hcHNpemUoU3RyaW5nIG1hcHNpemUpIHsgdGhpcy5tYXBz
aXplPW1hcHNpemU7IH0KICAgIHB1YmxpYyB2b2lkIHNldExheWVycyhTdHJpbmcgbGF5ZXJzKSB7
IHRoaXMubGF5ZXJzPWxheWVyczsgfQoKICAgIHB1YmxpYyB2b2lkIGFkZFBvaW50KGRvdWJsZSB4
LCBkb3VibGUgeSwgU3RyaW5nIGxhYmVsLCBTdHJpbmcgbGF5ZXIpIHsKCXRoaXMucG9pbnRzW3Ro
aXMubnBvaW50c10gPSBuZXcgUG9pbnRGZWF0dXJlKHgseSxsYWJlbCxsYXllcik7Cgl0aGlzLm5w
b2ludHMrKzsKICAgIH0KCiAgICBwcml2YXRlIEhhc2hNYXAgbWFrZVBhcmFtZXRlcnMoU3RyaW5n
IGNvbnRlbnQpIHsKCVBlcmw1VXRpbCBwdSA9IG5ldyBQZXJsNVV0aWwoKTsKCUhhc2hNYXAgcGFy
YW1ldGVycyA9IG5ldyBIYXNoTWFwKCk7CgkKCUFycmF5TGlzdCBsaW5lcyA9IG5ldyBBcnJheUxp
c3QoKTsJCglwdS5zcGxpdChsaW5lcywgIi9cbi8iLCBjb250ZW50KTsgLy8gdHVybiBjb250ZW50
IHN0cmluZyBpbnRvIGEgc2VyaWVzIG9mIGxpbmVzCglJdGVyYXRvciBsaSA9IGxpbmVzLml0ZXJh
dG9yKCk7Cgl3aGlsZSAobGkuaGFzTmV4dCgpKSB7CgkgIFN0cmluZyBsaW5lID0gKFN0cmluZykg
bGkubmV4dCgpOwoKCSAgLy8gdG9zcyBvdXQgY29tbWVudHMgb3IgbGluZXMgd2l0aG91dCBkYXRh
CgkgIGlmKHB1Lm1hdGNoKCIvPCEtLS4qLS0+LyIsIGxpbmUpKSBjb250aW51ZTsKCSAgaWYoIXB1
Lm1hdGNoKCIvPS8iLCBsaW5lKSkgY29udGludWU7CgoJICBBcnJheUxpc3QgZGF0YSA9IG5ldyBB
cnJheUxpc3QoKTsKCSAgcHUuc3BsaXQoZGF0YSwgIi89LyIsIGxpbmUpOwoJICBJdGVyYXRvciBk
aSA9IGRhdGEuaXRlcmF0b3IoKTsKCSAgcGFyYW1ldGVycy5wdXQoZGkubmV4dCgpLCBkaS5uZXh0
KCkpOwoJfQoKCXJldHVybihwYXJhbWV0ZXJzKTsKICAgIH0KCiAgICBwdWJsaWMgSGFzaE1hcCBy
dW5RdWVyeSgpIAoJdGhyb3dzIE1hbGZvcm1lZFVSTEV4Y2VwdGlvbiwgUHJvdG9jb2xFeGNlcHRp
b24sIElPRXhjZXB0aW9uIHsKCUhhc2hNYXAgcmVxdWVzdEhlYWRlcnM7IC8vIHRoZXNlIGhvbGQg
dGhlIHJlcXVlc3QgdG8gdGhlIE1hcFNlcnZlcgoJU3RyaW5nQnVmZmVyIGZvcm1Db250ZW50ID0g
bmV3IFN0cmluZ0J1ZmZlcigpOwoJU3RyaW5nIHJlc3BvbnNlOyAvLyB0aGlzIHdpbGwgaG9sZCB0
aGUgcmVzcG9uc2UgZnJvbSB0aGUgTWFwU2VydmVyCglIYXNoTWFwIHJlc3BvbnNlUGFyYW1ldGVy
czsgLy8gdGhpcyBob2xkcyB0aGUgcGFyYW1ldGVyaXplZCByZXNwb25zZSBmcm9tIHRoZSBNYXBT
ZXJ2ZXIKCgkvKiAKCSoqIHNldCByZXF1ZXN0IGhlYWRlcnMsIG5vbmUgbmVlZGVkIHRoYXQgSSBr
bm93IG9mIAoJKi8KCXJlcXVlc3RIZWFkZXJzID0gbnVsbDsKCgkvKgoJKiogc3VibWl0IHRoZSBy
ZXF1ZXN0IHRvIHRoZSBNYXBTZXJ2ZXIgc2VydmVyIGFuZCBwYWNrYWdlIHRoZSByZXN1bHRzCgkq
LwoJSHR0cFV0aWxzIGh1ID0gbmV3IEh0dHBVdGlscygpOwoJcmVzcG9uc2VQYXJhbWV0ZXJzID0g
bWFrZVBhcmFtZXRlcnMoaHUucG9zdENvbnRlbnRzKHRoaXMuc2VydmVyLCByZXF1ZXN0SGVhZGVy
cywgZm9ybUNvbnRlbnQudG9TdHJpbmcoKSkpOwoJCglyZXR1cm4ocmVzcG9uc2VQYXJhbWV0ZXJz
KTsKICAgIH0KCiAgICBwdWJsaWMgSGFzaE1hcCBnZXRNYXAoKSAKCXRocm93cyBNYWxmb3JtZWRV
UkxFeGNlcHRpb24sIFByb3RvY29sRXhjZXB0aW9uLCBJT0V4Y2VwdGlvbiB7CglIYXNoTWFwIHJl
cXVlc3RIZWFkZXJzOyAvLyB0aGVzZSBob2xkIHRoZSByZXF1ZXN0IHRvIHRoZSBNYXBTZXJ2ZXIK
CVN0cmluZ0J1ZmZlciBmb3JtQ29udGVudCA9IG5ldyBTdHJpbmdCdWZmZXIoKTsKCUhhc2hNYXAg
cmVzcG9uc2VQYXJhbWV0ZXJzOyAvLyB0aGlzIGhvbGRzIHRoZSBwYXJhbWV0ZXJpemVkIHJlc3Bv
bnNlIGZyb20gdGhlIE1hcFNlcnZlcgoKCS8qIAoJKiogc2V0IHJlcXVlc3QgaGVhZGVycywgbm9u
ZSBuZWVkZWQgdGhhdCBJIGtub3cgb2YgCgkqLwoJcmVxdWVzdEhlYWRlcnMgPSBudWxsOwoJCgkv
KiAKCSoqIHNldCB0aGUgYmFzaWMgY29udGVudCAKCSovCiAgICAgICAgZm9ybUNvbnRlbnQuYXBw
ZW5kKCJtYXA9IiArIFVSTEVuY29kZXIuZW5jb2RlKHRoaXMubWFwKSk7CglpZih0aGlzLmxheWVy
cyAhPSBudWxsKSBmb3JtQ29udGVudC5hcHBlbmQoIiZsYXllcnM9IiArIFVSTEVuY29kZXIuZW5j
b2RlKHRoaXMubGF5ZXJzKSk7CglpZih0aGlzLm1hcGV4dCAhPSBudWxsKSBmb3JtQ29udGVudC5h
cHBlbmQoIiZtYXBleHQ9IiArIFVSTEVuY29kZXIuZW5jb2RlKHRoaXMubWFwZXh0KSk7CglpZih0
aGlzLm1hcHNpemUgIT0gbnVsbCkgZm9ybUNvbnRlbnQuYXBwZW5kKCImbWFwc2l6ZT0iICsgVVJM
RW5jb2Rlci5lbmNvZGUodGhpcy5tYXBzaXplKSk7CgoJLyogCgkqKiBhZGQgcG9pbnRzIHRvIHRo
ZSBjb250ZW50CgkqLwoJZm9yKGludCBpPTA7IGk8dGhpcy5ucG9pbnRzOyBpKyspIHsJICAgIAoJ
ICAgIGZvcm1Db250ZW50LmFwcGVuZCgiJm1hcF8iICsgdGhpcy5wb2ludHNbaV0ubGF5ZXIgKyAi
X2ZlYXR1cmU9bmV3Iik7CgkgICAgZm9ybUNvbnRlbnQuYXBwZW5kKCImbWFwXyIgKyB0aGlzLnBv
aW50c1tpXS5sYXllciArICJfZmVhdHVyZV9wb2ludHM9IiArIHRoaXMucG9pbnRzW2ldLnggKyAi
KyIgKyB0aGlzLnBvaW50c1tpXS55KTsJICAgIAoJICAgIGZvcm1Db250ZW50LmFwcGVuZCgiJm1h
cF8iICsgdGhpcy5wb2ludHNbaV0ubGF5ZXIgKyAiX2ZlYXR1cmVfdGV4dD0iKyBVUkxFbmNvZGVy
LmVuY29kZSh0aGlzLnBvaW50c1tpXS5sYWJlbCkpOwoJfQoKCS8vIFN5c3RlbS5vdXQucHJpbnRs
bihmb3JtQ29udGVudC50b1N0cmluZygpKTsKCgkvKgoJKiogc3VibWl0IHRoZSByZXF1ZXN0IHRv
IHRoZSBNYXBTZXJ2ZXIgc2VydmVyIGFuZCBwYWNrYWdlIHRoZSByZXN1bHRzCgkqLwoJSHR0cFV0
aWxzIGh1ID0gbmV3IEh0dHBVdGlscygpOwoJcmVzcG9uc2VQYXJhbWV0ZXJzID0gbWFrZVBhcmFt
ZXRlcnMoaHUucG9zdENvbnRlbnRzKHRoaXMuc2VydmVyLCByZXF1ZXN0SGVhZGVycywgZm9ybUNv
bnRlbnQudG9TdHJpbmcoKSkpOwoJCQoJcmV0dXJuKHJlc3BvbnNlUGFyYW1ldGVycyk7CiAgICB9
Cn0K

--=_ABF4D1CD.90F1BD8A
Content-Type: application/octet-stream; name="PointFeature.java"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="PointFeature.java"

cGFja2FnZSB1cy5tbi5zdGF0ZS5kbnI7CgpwdWJsaWMgY2xhc3MgUG9pbnRGZWF0dXJlIHsKICBk
b3VibGUgeCwgeTsKICBTdHJpbmcgbGFiZWw7CiAgU3RyaW5nIGxheWVyOwoKICBwdWJsaWMgUG9p
bnRGZWF0dXJlKGRvdWJsZSB4LCBkb3VibGUgeSwgU3RyaW5nIGxhYmVsLCBTdHJpbmcgbGF5ZXIp
IHsgCiAgICB0aGlzLnggPSB4OwogICAgdGhpcy55ID0geTsKICAgIHRoaXMubGFiZWwgPSBsYWJl
bDsKICAgIHRoaXMubGF5ZXIgPSBsYXllcjsKICB9Cn0K

--=_ABF4D1CD.90F1BD8A--



More information about the mapserver-users mailing list