Win a copy of Java Database Connections & Transactions (e-book only) this week in the JDBC forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Devaka Cooray
  • Knute Snortum
  • Paul Clapham
  • Tim Cooke
Sheriffs:
  • Liutauras Vilda
  • Jeanne Boyarsky
  • Bear Bibeault
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Ron McLeod
  • Piet Souris
  • Frits Walraven
Bartenders:
  • Ganesh Patekar
  • Tim Holloway
  • salvin francis

Networking question from Jonathan Knudsen - Beginning J2ME..  RSS feed

 
Greenhorn
Posts: 28
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Ranchers,

Need help with Li and Knudsen's 'Begining J2ME , from novice to professional'.

Chapter 10 - Image loader example (page 148).
In order to render the PNG image on the phone, ImageLoader -URL, MIDlet propert has to be modified to a valid PNG image a URL.

I used the URL as in the following code snippet:

public void run() {
HttpConnection hc = null;
DataInputStream in = null;

try {
String url = getAppProperty("http://r0k.us/graphics/images/4kSnake.png");
hc = (HttpConnection)Connector.open(url);
int length = (int)hc.getLength();
byte[] data = null;
if (length != -1) {
data = new byte[length];
in = new DataInputStream(hc.openInputStream());
in.readFully(data);
}...........

As the link given in book is not working. The code compiles with no issues but when I run this on my WTK25 simulator, at run time is complains of illegal argument exception. How do I change the MIDlet property ImageLoader-URL? to render the image on simulator or a real java device?

thanks,
-Sab
 
Ranch Hand
Posts: 3178
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator


String url = getAppProperty("http://r0k.us/graphics/images/4kSnake.png");



sab son,
By looking at the above quote, I guess the property name "http://r0k.us/graphics/images/4kSnake.png" is not available in your application descriptor or Jar manifest.

Using common sense, I guess you want to apply the url directly into the Connector.open method. If so, why don't you just use:


String url = "http://r0k.us/graphics/images/4kSnake.png";



and make the image really accessible from that location?

Hope it helps...
 
sab son
Greenhorn
Posts: 28
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ko Ko Man,
thnx for the help, I did change the code to:

String link = "URL http://r0k.us/graphics/images/4kSnake.png";
//String url = getAppProperty("ImageLoader-URL");
hc = (HttpConnection)Connector.open(link);

but now it says 'IllegalargumentException: Invalid Protocol Name'

any suggestion?

previously I did think that my .jad/.jar/.MF files are missing the property,so I did add
'MIDlet-ImageLoader-URL: "http://r0k.us/graphics/images/4kSnake.png" ' in them manually, but nothing happened.

any further suggestions?
 
sab son
Greenhorn
Posts: 28
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ko Ko,

One fellow rancher from j2me forum solved the doubt:

as per Girish Nagaraj:

1. select settings in the KToolbar
2. select user-defined tab & change URL

package application again
1. select project menu option
2. package --> create package
3. copy the jar file from bin folder to the real java device & run

this worked ! thought would be worth to share here.

-Sab.
 
Ko Ko Naing
Ranch Hand
Posts: 3178
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Yes, sab son. It's good to know that your problem is solved.
 
Won't you be my neighbor? - Fred Rogers. tiny ad:
how do I do my own kindle-like thing - without amazon
https://coderanch.com/t/711421/engineering/kindle-amazon
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!