Java Imaging on Pocket PC (Windows Mobile 2003)

Hi all,
I've got a problem concerning imaging on a pocket pc (HP IPAQ with an Intel PXA270 CPU). I have to extend an existing SWT application written with J2ME Personal Profil and IBM J9 runtime. The thing is, that I have to implement a certain imaging functionallty, namely I have to implement a function where you can rotate gifs/jpg images an arbitrary amount of grades around their center. After extensive searching I couldn't spot a java extension wich would include pocket pc support to do this rapidly.
So I tried to do it "by hand", which means pixel by pixel (see attached code).
But the problem I got now is a very weak performance. The rotation itself of a 600x600 gif consumes about 5800 ms which is definitly to heigh for the purpose I want to use it for. My questions now are:
- Is there any imaging extension for java which I could use for this puropse on the pocket pc
- If not: How could I improve the performance of the rotation function?
I'd be very thankful for any tips & hints.
static ImageData rotateFull(ImageData srcData, int grad) {
          int diagonal =
               (int) Math.sqrt(
                    (srcData.width * srcData.width)
                         + (srcData.height * srcData.height));
          ImageData destData =
               new ImageData(diagonal, diagonal, srcData.depth, srcData.palette);
          int x_adj, y_adj, x_new, y_new, pixel_data;
          int corrX = srcData.width / 2;
          int corrY = srcData.height / 2;
          int pixels = srcData.height * srcData.width;
          double bogen = (grad * Math.PI) / 180;
          float cos_winkel = (float) Math.cos(bogen);
          float sin_winkel = (float) Math.sin(bogen);
          for (int y = 0; y < (srcData.height); y++) {
               for (int x = 0; x < (srcData.width); x++) {
                    x_adj = x - corrX;
                    y_adj = y - corrY;
                    x_new = (int) ((x_adj * cos_winkel) - (y_adj * sin_winkel));
                    y_new = (int) ((x_adj * sin_winkel) + (y_adj * cos_winkel));
                    pixel_data = srcData.getPixel(x, y);
                    destData.setPixel(
                         x_new + (destData.width / 2),
                         y_new + (destData.height / 2),
                         pixel_data);
          return destData;
     }

Fellow regulars, please forgive the zombie thread: it's referenced in another thread, and it seemed the best place to put the following code.
I've shown a number of intermediate steps en route to the best solution I can be bothered to post, which is the last of the rotate* methods. The next step, which would eliminate almost 4*sqrt(width*width+height*height) divisions, is to use Bresenham's line-drawing algorithm to work out the edges and then interpolate between them. However, to be frank, I couldn't be bothered. That's a lot of work, and probably means splitting the code into 9+ cases.
One further optimisation which might be worth considering is to use the AWT ImageConsumer/ImageProducer model rather than SWT images. That would eliminate the awkward boxing/unboxing of the rasters, which is probably responsible for at least 10% of the time taken by rotateArray and subsequent.
Profiling is always tricky. Comparing rotateTrueclip against rotateFull using different methods I measure it as taking as much as 133% of the time, or as little as 1%. The Bresenham version would certainly be faster than rotateTrueclip.
I hope this proves useful both as code in its own right and as an example of some optimisation techniques.
import org.eclipse.swt.events.*;
import org.eclipse.swt.graphics.*;
import org.eclipse.swt.widgets.*;
public class RotationSandbox {
    private static final Display display=new Display();
    private final String title;
    private final Image image;
    public RotationSandbox(String title, Image image) {
        this.title=title;
        this.image=image;
    public RotationSandbox(String title, ImageData imagedata) {
        this(title, new Image(display,imagedata));
    public void run() {
        final Shell shell = new Shell(display);
        shell.addPaintListener(new PaintListener() {
            public void paintControl(PaintEvent event) {
                // Draw the untainted image
                event.gc.drawImage(image, 0, 0);
        shell.setText(title);
        shell.setSize(image.getImageData().width+20, image.getImageData().height+30);
        shell.open();
        while (!shell.isDisposed()) {
            if (!display.readAndDispatch()) {
                display.sleep();
        image.dispose();
        display.dispose();
    static ImageData rotateFull(ImageData srcData, int grad) {
        int diagonal =
            (int) Math.sqrt(
                (srcData.width * srcData.width)
                    + (srcData.height * srcData.height));
        ImageData destData =
            new ImageData(diagonal, diagonal, srcData.depth, srcData.palette);
        int x_adj, y_adj, x_new, y_new, pixel_data;
        int corrX = srcData.width / 2;
        int corrY = srcData.height / 2;
        int pixels = srcData.height * srcData.width;
        double bogen = (grad * Math.PI) / 180;
        float cos_winkel = (float) Math.cos(bogen);
        float sin_winkel = (float) Math.sin(bogen);
        for (int y = 0; y < (srcData.height); y++) {
            for (int x = 0; x < (srcData.width); x++) {
                x_adj = x - corrX;
                y_adj = y - corrY;
                x_new = (int) ((x_adj * cos_winkel) - (y_adj * sin_winkel));
                y_new = (int) ((x_adj * sin_winkel) + (y_adj * cos_winkel));
                pixel_data = srcData.getPixel(x, y);
                destData.setPixel(
                    x_new + (destData.width / 2),
                    y_new + (destData.height / 2),
                    pixel_data);
        return destData;
    // First change: iterate over destination pixels rather than source pixels.
    static ImageData rotateDest(ImageData srcData, int theta_deg) {
        int diagonal =
            (int) Math.sqrt(
                (srcData.width * srcData.width)
                    + (srcData.height * srcData.height));
        ImageData destData =
            new ImageData(diagonal, diagonal, srcData.depth, srcData.palette);
        final int corrX = srcData.width / 2;
        final int corrY = srcData.height / 2;
        double bogen = (theta_deg * Math.PI) / 180;
        final float cos_winkel = (float) Math.cos(bogen);
        final float sin_winkel = (float) Math.sin(bogen);
        final int half_diag=diagonal>>1;
        for (int y=0; y<diagonal; y++) {
            for (int x=0; x<diagonal; x++) {
                int x_new=x-half_diag, y_new=y-half_diag;
                int x_adj=(int) ((x_new * cos_winkel) + (y_new * sin_winkel));
                int y_adj=(int) (-(x_new * sin_winkel) + (y_new * cos_winkel));
                int x_old=x_adj+corrX, y_old=y_adj+corrY;
                if (x_old>=0 && y_old>=0 && x_old<srcData.width && y_old<srcData.height) {
                    destData.setPixel(x,y,srcData.getPixel(x_old,y_old));
        return destData;
    // Second change: replace multiplications with additions.
    static ImageData rotateIter(ImageData srcData, int theta_deg) {
        int diagonal =
            (int) Math.sqrt(
                (srcData.width * srcData.width)
                    + (srcData.height * srcData.height));
        ImageData destData =
            new ImageData(diagonal, diagonal, srcData.depth, srcData.palette);
        final int corrX = srcData.width / 2;
        final int corrY = srcData.height / 2;
        double bogen = (theta_deg * Math.PI) / 180;
        final float cos_winkel = (float) Math.cos(bogen);
        final float sin_winkel = (float) Math.sin(bogen);
        final int half_diag=diagonal>>1;
        for (int y=0; y<diagonal; y++) {
            float x_adj=-half_diag*cos_winkel + (y-half_diag)*sin_winkel + corrX;
            float y_adj=half_diag*sin_winkel + (y-half_diag)*cos_winkel + corrY;
            for (int x=0; x<diagonal; x++) {
                int x_old=(int)x_adj, y_old=(int)y_adj;
                if (x_old>=0 && y_old>=0 && x_old<srcData.width && y_old<srcData.height) {
                    destData.setPixel(x,y,srcData.getPixel(x_old,y_old));
                x_adj+=cos_winkel; y_adj-=sin_winkel;
        return destData;
    // Third change: eliminate those virtual method calls in favour of direct array indexing.
    static ImageData rotateArray(ImageData srcData, int theta_deg) {
        int diagonal =
            (int) Math.sqrt(
                (srcData.width * srcData.width)
                    + (srcData.height * srcData.height));
        ImageData destData =
            new ImageData(diagonal, diagonal, srcData.depth, srcData.palette);
        final int corrX = srcData.width / 2;
        final int corrY = srcData.height / 2;
        double bogen = (theta_deg * Math.PI) / 180;
        final float cos_winkel = (float) Math.cos(bogen);
        final float sin_winkel = (float) Math.sin(bogen);
        final int half_diag=diagonal>>1;
        int[] src_raster=new int[srcData.width*srcData.height];
        srcData.getPixels(0,0,src_raster.length,src_raster,0);
        int[] dst_raster=new int[diagonal*diagonal];
        for (int y=0; y<diagonal; y++) {
            float x_adj=-half_diag*cos_winkel + (y-half_diag)*sin_winkel + corrX;
            float y_adj=half_diag*sin_winkel + (y-half_diag)*cos_winkel + corrY;
            for (int x=0; x<diagonal; x++) {
                int x_old=(int)x_adj, y_old=(int)y_adj;
                if (x_old>=0 && y_old>=0 && x_old<srcData.width && y_old<srcData.height) {
                    dst_raster[x+y*diagonal]=src_raster[x_old+y_old*srcData.width];
                x_adj+=cos_winkel; y_adj-=sin_winkel;
        destData.setPixels(0,0,dst_raster.length,dst_raster,0);
        return destData;
    // Fourth change: use fixed-point rather than floating-point.
    static ImageData rotateFixpoint(ImageData srcData, int theta_deg) {
        int diagonal =
            (int) Math.sqrt(
                (srcData.width * srcData.width)
                    + (srcData.height * srcData.height));
        ImageData destData =
            new ImageData(diagonal, diagonal, srcData.depth, srcData.palette);
        final int corrX = srcData.width / 2;
        final int corrY = srcData.height / 2;
        double bogen = (theta_deg * Math.PI) / 180;
        final int cos=(int)(65536*Math.cos(bogen));
        final int sin=(int)(65536*Math.sin(bogen));
        final int half_diag=diagonal>>1;
        int[] src_raster=new int[srcData.width*srcData.height];
        srcData.getPixels(0,0,src_raster.length,src_raster,0);
        int[] dst_raster=new int[diagonal*diagonal];
        for (int y=0; y<diagonal; y++) {
            int x_adj=-half_diag*cos + (y-half_diag)*sin + (corrX<<16);
            int y_adj=half_diag*sin + (y-half_diag)*cos + (corrY<<16);
            for (int x=0; x<diagonal; x++) {
                int x_old=x_adj>>16, y_old=y_adj>>16;
                if (x_old>=0 && y_old>=0 && x_old<srcData.width && y_old<srcData.height) {
                    dst_raster[x+y*diagonal]=src_raster[x_old+y_old*srcData.width];
                x_adj+=cos; y_adj-=sin;
        destData.setPixels(0,0,dst_raster.length,dst_raster,0);
        return destData;
    // Fifth change: only iterate over the box we care about.
    // I've also done some incrementalising immediately, rather than defer to the
    // next version.
    static ImageData rotateTrueclip(ImageData srcData, int theta_deg) {
        int diagonal =
            (int) Math.sqrt(
                (srcData.width * srcData.width)
                    + (srcData.height * srcData.height));
        ImageData destData =
            new ImageData(diagonal, diagonal, srcData.depth, srcData.palette);
        final int corrX = srcData.width / 2;
        final int corrY = srcData.height / 2;
        double bogen = (theta_deg * Math.PI) / 180;
        final int cos=(int)(65536*Math.cos(bogen));
        final int sin=(int)(65536*Math.sin(bogen));
        final int half_diag=diagonal>>1;
        final int wfix=srcData.width<<16, hfix=srcData.height<<16;
        int[] src_raster=new int[srcData.width*srcData.height];
        srcData.getPixels(0,0,src_raster.length,src_raster,0);
        int[] dst_raster=new int[diagonal*diagonal];
        int x_start=-half_diag*(cos+sin)+(corrX<<16)-sin;
        int x_end=x_start+diagonal*cos;
        int y_start=half_diag*(sin-cos)+(corrY<<16)-cos;
        for (int y=0; y<diagonal; y++) {
            x_start+=sin; x_end+=sin;
            y_start+=cos;
            int dxs=0, dxe=diagonal;
            // Clip to keep source x-coords in range.
            if (cos>0) {
                if (x_start<0) dxs=(cos-1-x_start)/cos;
                if (x_end>=wfix+cos) dxe=(wfix-x_start+cos-1)/cos;
            else if (cos<0) {
                if (x_end<cos) dxe=(cos-x_start-cos+1)/cos;
                if (x_start>=wfix) dxs=(wfix-x_start+cos-1)/cos;
            else if (x_start<0 || x_start>=wfix) continue;
            // Clip to keep src y-coords in range, taking into account the
            // changes already made to dxs and dxe.
            int y_adj=y_start-dxs*sin;
            final int y_end=y_start-dxe*sin;
            if (sin>0) {
                if (y_end<-sin) dxe=(y_start+sin)/sin;
                if (y_adj>=hfix) {
                    dxs=(-hfix+y_start+sin+1)/sin;
                    y_adj=y_start-dxs*sin;
            else if (sin<0) {
                if (y_adj<0) {
                    dxs=(y_start+sin-1)/sin;
                    y_adj=y_start-dxs*sin;
                if (y_end>=hfix-sin) dxe=(y_start-hfix+sin+1)/sin;
            else if (y_start<0 || y_start>=hfix) continue;
            int x_adj=x_start+dxs*cos;
            int doff=dxs+y*diagonal;
            for (int x=dxs; x<dxe; x++) {
                int x_old=x_adj>>16, y_old=y_adj>>16;
                dst_raster[doff++]=src_raster[x_old+y_old*srcData.width];
                x_adj+=cos; y_adj-=sin;
        destData.setPixels(0,0,dst_raster.length,dst_raster,0);
        return destData;
    public static void main(String[] args) {
        ImageData orig=new ImageData(100,100,32,new PaletteData(0xff0000,0xff00,0xff));
        int[] raster=new int[100*100];
        int roff=0, col=0;
        for (int y=0; y<100; y++) {
            for (int x=0; x<100; x++) {
                raster[roff++]=col;
                col+=(1<<16);
            col=(col&0xff)+1;
        orig.setPixels(0,0,raster.length,raster,0);
        // For some reason I don't understand, not knowing SWT, I only appear able to
        // make one Display and one Shell per Display.
//        new RotationSandbox("Original image",orig).run();
//         ImageData dasu_rotate=rotateFull(orig,45);
//         new RotationSandbox("Rotated with dasu's code",dasu_rotate).run();
//         ImageData rotate_dest=rotateDest(orig,45);
//         new RotationSandbox("Rotated iterating over dest pixels",rotate_dest).run();
//         ImageData rotate_iter=rotateIter(orig,45);
//         new RotationSandbox("Mul -> add",rotate_iter).run();
//         ImageData rotate_array=rotateArray(orig,45);
//         new RotationSandbox("Use raster arrays",rotate_array).run();
//         ImageData rotate_fixpoint=rotateFixpoint(orig,45);
//         new RotationSandbox("Use fixpoint arithmetic",rotate_fixpoint).run();
        ImageData rotate_trueclip=rotateTrueclip(orig,45);
        new RotationSandbox("Clip to rotated bounding box",rotate_trueclip).run();
}

Similar Messages

  • Create Flash Content for Pocket PC "Windows Mobile 2003 SE" from Flash Professional 8

    Hi all,
    I would like to create a standalone flash application on my
    two pocket PCs (Dell Axim x50 and Qtek S110). These pocket PC
    uses the "Windows Mobile 2003 SE" operating system.
    At this time, I have installed the "Flash Player 7 for Pocket
    PC" on my 2 pocketPCs. Apparently, I have not flash player
    application
    that is able to load .swf files but only a plugin for Pocket
    IE. Do you confirm?
    I have the license to use "Flash Professional 8". Could you
    explain me the procedure to publish flash content for my Pocket PC?
    Which Flash version I have to use?
    Which Action Script I have to use?
    Is it possible to test my application with Flash Pro 8?
    Finally, I would like to develop a Flash application in
    fullscreen mode and not embedded into Pocket IE. Is it possible to
    realize
    that with Flash Pro 8?
    Sincerely,
    Romain

    Hi Romain.
    As at the time of this writing,
    I suggest you have a look at Flash Assist by AntMobile
    (www.antmobile.com)
    It will allow you to view Flash content at full screen.
    It officially supports Flash 5 and 6, but I've used it with
    Flash 7 for the PPC.
    Flash 7 for the PPC supports AS 2.0
    Macromedia hasn't released a stand alone player /
    distribution Kit, or CDK for Flash Player 7 for the PPC, and I am
    anxiously awaiting that as well.
    However, the stand alone player for the Flash Player 6 for
    the PPC is available
    You will want to change your publish settings to Flash 7,
    AS2.0
    Do some hunting around.
    http://www.adobe.com/devnet/devices/pocket_pc.html
    Cheers,
    Wasim

  • Oracle Barcode and Windows Mobile 2003 for Pocket PC

    I have the following for the system of Barcode
    Pocket PC Symbol (MCG9000) MC9060 con Windows Mobile 2003
    Printer ZEBRA Z4M
    Access Point DWL-2100AP 802.11g/2.4GHz Wireles (D-LINK)
    Please I need the following:
    That I need software to develop the program for the reading of the barcode?.
    I Want develop in order to that it be executed in the Internet Exporer of the Windows Mobile 2003 and updating the data base Oracle online 10g.

    Internet Explorer on the Windows Mobile 2003 is not supported as an interface to Oracle Lite.
    You would need to use .Net(C#,C++, Visual Basice) or develop with a native CE development environment.
    You can also develop with java on the CE device.
    Internet Explorer is supported on a Win32 device with a component call Web Development(formerly Web-to-Go)
    Regards...

  • How install j9 in pocketPC / windows Mobile 2003

    Hi,
    I am new to java embeded environment,
    1. How to Install j9 vm in pocket Pc under windows mobile 2003, because i think j9 vm will come along with IBM Web spehere Every Place Micro Environment pakage.
    2.
    a). is there any contraint that the java class should be a MIDlet or some thing like J2ME stuff to run under device.
    b). Can we compile a java class (J2SE the same version the vm supports) .
    Thanks in Advance,
    Regards,
    Vasu

    The latest version of WSDD 5.7 comes with .CAB file installs for Personal Profile, or MIDP 2.0/CLDC1.1. Both install an example as well I believe. For Personal Profile you need to install JARs and modify or create a shortcut run it. For MIDP, you can OTA a MIDlet or copy the JAD onto the file system and double click and it should add it to the list of available MIDlets.
    You can use the WSDD IDE if you wish, or simply use anything else that can compile Personal Profile applications or MIDlets.

  • SAP MI 2.5 (+CrEme) doesn't work under Windows Mobile 2003 Second Editon

    While testing our new Hardware (Dell Axim X30 with Intel PXA270-CPU and Windows Mobile 2003 Second Edition (4.21.1088)) i noticed, that the SAP MI Client Software will not work at all!
    <i>Setup says "The program you have installed may not display properly because it was designed for a previous version of Windows Mobile software."
    But this doesn't seam to be the Problem, because whenever you install an application that hasn't been updated to be compatible with the Second Edition, this dialogue box pops ups.</i> (Reason: The new Landscape-Mode - Our device runs in Portrait-Mode)
    ...Ok, after tabbing "OK" at this Dialogue, Setup continues! Same procedure at the CrEme-Installer!
    After Soft-Resetting, the PocketPC shows up the Message that CrEme is starting up, but it doesn't listen it's Port on the PDA!
    You get a Timeout when trying to load the MobileInfrastructure via the Link at Startmenu.
    Also the InternetExplorer crashes when opening a webpage with an Java-Applet. Don't know if IE crashes on Windows Mobile 2003 First Edtion, but i don't think so...
    <i>Of course the SAP MI 2.5 works on the First Edition!</i>
    Anyone knows this problem <b>and when can we expect a Solution?</b>

    Hi all!
    I found out that CrEme crashes after executing on Windows Mobile 2003 2nd Edition!
    Just start the CrEme-Console ("\Windows\CrEme\bin") and type "java" into the Console, it crashes immediately after printing some Messages.
    The window disappears too fast to guess what it says...
    BTW: On PocketPC 2003 (1st Edition) it doesn't crash!
    So it seams we need a new CrEme (or other VM??) for Windows Mobile 2003 2nd Edition!
    Any ideas?
    Thanks in Advance,
    Markus

  • Swf on window mobile 2003

    Hi!
    I have to do a flash application that runs on window mobile
    2003. It uses ExternalInterface.addCallback method.. I have some
    problems with it on my pc because it doesn't work but recently I
    learned that it could due to security rules on flash player 8 but
    what about flash on window mobile? Also on it I could have some
    problems using ExternalInterface.addCallback method.?
    In that case what I have to do?
    Thanks

    the Character is not equals charIt should be, but it seems we don't have total symmetry of types yet. See [finish primitive-sequence to primitive-array conversions|http://javafx-jira.kenai.com/browse/JFXC-3257] bug, for example, or [nativearray of byte|http://javafx-jira.kenai.com/browse/JFXC-3325] which will be fixed in SoMa (JavaFX 1.3?).
    I tried:
    var foo = "{[ 1 .. 400 ]}";
    var dummy = foo.substring(0, 1024);
    var buff: nativearray of Character = dummy.toCharArray();
    println(sizeof buff);and I get an error: TestPlain.fx:21: incompatible types
    found   : nativearray of Character
    required: nativearray of java.lang.Character
    var buff: nativearray of Character = dummy.toCharArray();
                                         ^
    1 errorAnd if I write: var buff: nativearray of Character = dummy.toCharArray() as nativearray of Character; I get a compiler crash...
    I see, looking at [String(byte...) doesn't compile|http://javafx-jira.kenai.com/browse/JFXC-2852] bug, SequenceConversions class in the webrev.zip file, that we don't have a toCharArray method yet. Either an overview or some technical issue, I don't know.
    So it looks like there are still some holes in nativearray support (it was presented as "experimental" in JavaFX 1.2 release announcements...).
    PS.: I am not a Sun employee, I don't know Chinese, I don't have a Windows Mobile phone and I didn't even tried the mobile emulator yet (just tried, seems hard to use outside of NetBeans, which I don't have), among other problems. So I fear I am not the best help you can get, don't put high hopes on me... :-P

  • Does LV 7.0 PDA module support Microsoft Windows Mobile 2003 software for PocketPC?

    I am evaluating the possible use of PDA
    that runs Microsoft Windows Mobile 2003 software
    for PocketPC and would like to know if the
    LabVIEW 7.0 PDA module supports this software.
    I am planning to scan barcodes with this PDA
    and transmit this data over a WLAN to database.
    Thanks!

    Depending on the Pocket PC PDA type it is practical to add a barcode reader attachment and then use this as keyboard input into the PDA. You can look at a Grabba barcode Reader attachment (www.grabba.com)
    I work for Grabba in R&D and we are looking at demand in this area (which is why I was looking at the forum to try and determine whether a need exists).
    If we can help you let us know. I would be interested in knowing where you think this will help you. We have our own ideas but input from the field is most welcome.
    cheers

  • HP iPAQ 5450 with Windows Mobile 2003 802.1x and certificates.......

    This maybe a bit off topic but I am struggling trying to get some answers out of HP.
    We have some HP iPAQ 5450/5550's all running Windows Mobile 2003 - to use 802.1x Authentication with PEAP or TLS-EAP we need certificates installing on the PocketPCs. We have a Windows 2000 Active-Directory integrated Certificate Authority that publishes certificates to W2K machines OK - initially HP didn't include any way of importing Certificates but have released the SDK Certificate Enrolment Tool (enroll.exe). We have tried for several days to get a certificate but to no avail and we are struggling to find any information out. Has anyone on here managed this? If so how?
    Thanks
    Andy

    Obviously the WindowsCE devices can't be 'members' of the domain as they would need W2K to do that (create a computer account etc). The enrollment tool is available from HP's website (software & drivers etc). Once I installed the enroll.exe tool I modified the enroll.cfg file to request a 'computer' certificate from my CA, this is now installed and appears in 'Settings, System, Certificates'. I have yet to actually test this with a Cisco AP as I just can't get my hands on one.......
    Andy

  • Alert Box Displayed twice in response AJAX on Windows Mobile 2003

    Hi,
    I'm using AJAX in my application. In the inital page of app, I request by AJAX a one verification and in the response is displayed a alert box.
    Windows Mobile 5.0 shows perfectly this alert box. But on Windows Mobile 2003, is displayed two alert box with the same response.
    AnyIdea?
    Thanks.
    Regards,
    Bruno

    Hi Bruno Ambrozio ,
    Just to understand AJAX's Open() method...
    We use open() method before sending the request to the server and this takes 3 arguments.
    - The first argument defines which method to use when sending the request  (GET  or POST).
      - The second, specifies the URL of the server-side script.
    -  The third, specifies that the request should be handled asynchronously.
    Since your problem was solved by changing the third argument may be the server action and the local script action are not synchronous coz of the variation of the processing speed in Windows Mobile 5.0 and Windows Mobile 2003...
    Cheers,
    kumarR

  • JVM & HP iPAQ with Windows Mobile 2003 SE

    Hi,
    what kind of JVM can I use on HP iPAQ with Windows Mobile 2003 SE. I don't know what configuration should I use, if CLDC or CDC.
    Thanks for replies.

    Hi;
    For the configuration i think its CDC, as the ipaqs have a big memory as using CLDC, but for the JVM, i don't know,
    if you find the answer plz send it to me at [email protected]
    good luck.

  • How to compile a java file in J9 for windows mobile 5.0

    I have downloaded J9 for windows mobile 5.0 and need help on how to compile a java file.

    You can compile your source code using J2SE ;)
    may be this is important for you:
    http://awareness.ics.uci.edu/~rsilvafi/pocketPC/index.
    html
    Regards!!!Actually i am using some eSWT related classes also.. so is there any way to compile from the J9 environment using J9 console..

  • Problems executing own java code on Pocket Pc 2003 SE

    I've installed creme 4.0 beta on my HPx4700 running Windows Mobile 2003 SE (Second edition).
    But creme fails executing my javacode when executing it with jrun:
    The error says, that creme cannot find the class. I have tried putting the .class file in the bin.directory where creme.exe is located, aswell as putting it in the lib directory where the java libraries are located. Nohing seems to work. (BTW have tried superwaba jvm, same error). Wondering if it migh be a missing configuration of the OS?
    Although i must add that some applets can actually load in the browser. Which means the java plugin is registered and working.
    Any one capable of helping?
    /SBM

    well try to package your classes into a jar file then copy it to ur PDA. u can eecute the jar file directly by double clicking on it. otherwise u need to place everything in the root folder of ur device..

  • Flash Player 7 for Windows Mobile crashes Pocket IE

    I just downloaded and installed the latest Flash Player 7 for
    Windows Mobile on my Windows Mobile 2003 SE device. As a result
    Pocket Internet Explorer crashes whenever it tries to open a page
    with Flash content - including the adobe.com website. Opera Mobile
    seems not to recognize the player and simply ignores all Flash
    content.
    Is there any way to fix this and to get Flash support on
    Windows Mobile 2003 SE ?

    >I just downloaded and installed the latest Flash Player 7
    for Windows
    >Mobile on
    > my Windows Mobile 2003 SE device. As a result Pocket
    Internet Explorer
    > crashes
    > whenever it tries to open a page with Flash content -
    including the
    > adobe.com
    > website. Opera Mobile seems not to recognize the player
    and simply ignores
    > all
    > Flash content.
    > Is there any way to fix this and to get Flash support on
    Windows Mobile
    > 2003
    > SE ?
    You will probably find that Adobe.com is using Flash 8 or 9
    content, hence
    the crash. Since most up-to-date web sites will be similar,
    you may find
    Flash 7 is largely unusable for web surfing.
    Just speculating.
    I don't know for certain.
    Steve
    http://twitter.com/Stevehoward999
    Adobe Community Expert: eLearning, Mobile and Devices
    European eLearning Summit - EeLS
    Adobe-sponsored eLearning conference.
    http://www.elearningsummit.eu

  • Install J9 for MIDP on Pocket PC windowns mobile 2002

    I'm a newbie to Pocket PC platform. Somebody please help me. I've been searching online everywhere for days.
    I have a j2me CLDC/MIDP application, built by Ant/Antenna. It works well on phone. Now i'd like to port the jad and jar files to Pocket PC. My Pocket PC is manufactured by Symbol, with Windows mobile 2002 OS installed. I know I should install one kind of VM on device first. Here I chose IBM J9. I tried to install "WebSphere Everyplace Micro Environment 5.7.2 MIDP 2.0 for Windows Mobile 2003", I followed the installation instructions and there are following directories and files generated on device:
    Program Files\J9\MIDP20\bin:
    emulator.exe, j9midp20.exe, java.properties
    Program Files\J9\MIDP20\lib:
    j2me.keystore, security.policy, jclMidp20\AMS.jad, jclMIDP20\jclMIDP20.jxe, jclMidp20\ext
    Program Files\J9\MIDP20\examples:
    GolfScoreTrackerSuite.jad, GolfScoreTracker.jar, GolfScoreTrackerSuite.lnk
    Then I tried to run the example program. I clicked GolfScoreTrackerSuite.lnk, there popped up an emulator.exe error window: "Cannot find 'emulator' (or one of its components). Make sure the path and filename are correct and all the required libraries are available."
    can somebody please tell me what went wrong? Is it because my OS (windows mobile 2002) is too old? why there is no J9.exe in Program Files\J9\MIDP20\bin directory? According to installation help doc, the following files should also reside in Program Files\J9\MIDP20\bin:
    - ivemidp20_22.dll
    - j9mjit22.dll
    - j9mjitd22.dll
    - jclmidp20_22.dll
    But i don't have the above files by automatically installation of CAB file.

    Hello
    You should install the Mobile Server and the Mobile Development Kit on a desktop computer. Then, connect your Pocket PC to the desktop computer, call the ActiveSync program and select "Add/Remove programs". The Oracle Lite for Pocket PC option must appear on screen.
    []s Alexandre Murakami

  • Wireless Java App on Pocket PC

    Hi everyone,
    I'm a newbie. I have a Pocket PC running Windows Mobile 2003. If I want to write a wireless application using Java, what do I need to have in term of software requirement?
    I browsed other threads and many people wanted to do the same thing. If J2ME doesn't support Pocket PC natively, is there any third-party plugin for that?
    Thanks so much,
    Raja

    You can installe a minimum version of java on it and run normal java applet, i think.

Maybe you are looking for

  • Flash Player 11 Not Working on OSX 10.7.3 - Plug in failure

    Dear Adobe, I recently updated to Flash 11 and when I tried to watch videos on YouTube it would always say 'Plug in Failure' after about 3-5 secs of the video loading. I've tried all uninstallings and re-instaling it but NOTHING works not even the Fl

  • I cannot call anyone after upgradiong my phone to iOs 7

    After i upgraded my iphone5 to iOs 7.0.2 i cant no longer call anyone in my contact list please help me, i have to make an important calls

  • Will the LabView6.1 application run on LabView7 flawlessly?

    I create the Labview application program using version 6.1. Will I be able to run this program on LabView7(latest version) without any modification?

  • Tool bar will not open

    dear sir have just down loade fire fox tool bar will not open to allow me to put in home page? allso have fire fox on my other computor witch i have had know for about a year the new download has a differant for matt can i get the old version regards

  • ProRes 422 in QuickTime Player or FCP 5.1.4

    Is there a quicktime component (or something like it) that I can install on my Mac so that I can play ProRes422 codec movies in FCP 5.1.4 and/or QuickTime Player (Pro) 7.2? Where can I download it? My system: PowerBook G4 17" 1.33 GHz processor 2 GB