我有一个图像来自远程服务器通过http url。我想对此做一些图像分析,所以我想在我的服务器端Java代码中读取图像内容。这段代码在tomcat服务器中运行。servlet无法从http服务器读取图像
public ImageTrimmer(String urlPath) {
imageSrc = urlPath;
try {
Image img = ImageIO.read(new URL(imageSrc)); // throws the exception
img.getRGB(0, 0);
} catch (IOException e) {
throw new RuntimeException("Problem reading image", e);
}
}
图片的URL可以是任何返回图片的有效网址。一个url路径的例子是 - “http://build.ford.com/dig/Ford/E-Series Cargo Van/2012/BP3TT-FULL-EXT/Image [| Ford | E-Series Cargo Van | 2012 | 1 | 1. | .E1E..YZ ... 89E.BS1.CB1]/EXT/1/vehicle.png”。
这里是例外,而读取图像
java.io.IOException: Server returned HTTP response code: 505 for URL: http://build.ford.com/dig/Ford/E-Series Cargo Van/2012/BP3TT-FULL-EXT/Image[|Ford|E-Series Cargo Van|2012|1|1.|.E1E..YZ...89E.BS1.CB1.]/EXT/1/vehicle.png
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1436)
at java.net.URL.openStream(URL.java:1010)
at javax.imageio.ImageIO.read(ImageIO.java:1367)
任何帮助阅读这一形象成功地将veryhelpful我得到。
try块中的代码,你检查它是否可编译?我的日食会给你的代码带来错误。我有一个可编译的代码,有一些变化,它正确地获得图像的宽度和高度。如果你愿意,我可以粘贴代码作为答案。 – Jasonw 2012-02-14 08:19:33