Skip Headers
Oracle® Java ME Embedded Developer's Guide
Release 8
E52611-01
  Go To Table Of Contents
Contents
Go To Index
Index

Previous
Previous
 
Next
Next
 

2 Java Embedded VM Proxy and Console

In a typical profiling and monitoring session, the Java virtual machine must do a large amount of extra work: collecting, storing, and analyzing data, as well as replying to requests from external tools. When this is done on embedded devices, possibly using a slower CPU or constrained memory, development can become an unacceptably sluggish experience.

For this reason, version 8 of the Oracle Java ME Embedded software moves as much CPU intensive processing away from the embedded Java VM as possible. Instead, a separate application running on the host side will interact across the network with the internals of the Java VM. With this design, the VM only sends low-level events to the host application, such as state change information, methods transition, and objects information. The information is then stored and analyzed on host side, and the host application in turn provides the information to all external profilers, monitors, and managers. External tools can treat the Java SE host application as if it was the VM itself. Besides performance and footprint goals, this approach minimizes development efforts on porting different component communications to new physical transport such as USB, serial, or Bluetooth. Instead, this VM proxy application and the VM proxy channel becomes the inter-component tool, and Javacall, CLDC, MEEP, JSRs and SDK components can all take advantage of it.

2.1 Design

The VM proxy uses a single transport connection to transmit all data for any subsystem. See Figure 2-1 for an illustration of this design; the VM proxy is the middle component.

Figure 2-1 VM Proxy and Agent Design for Java Embedded

Description of Figure 2-1 follows
Description of "Figure 2-1 VM Proxy and Agent Design for Java Embedded"

Be sure not to confuse the VM proxy with the VM agent. The VM agent consists of native code and is located on the embedded device. The VM proxy is written in Java SE and is launched on the desktop host.

The proxy also provides a software management (SWM) API, similar to the javax.microedition.swm package, as declared in the Java ME Embedded Profile (MEEP) specification. This API is an extension of the previous Application Management System (AMS) API of previous versions of the Oracle Java ME Embedded platform, and can be leveraged by ME SDK, IDEs, and the CLI to manage applications with any connected device.

The transport layer between the VM proxy (desktop) and the VM agent (device) is protocol-agnostic by design. However, it is currently implemented for TCP, Serial (COM port), and USB. The transport can initiate connection establishment in any direction, either from device to host or vise versa. The current supported platforms are: Win32 (the emulator), RPi (Raspberry Pi with an embedded Linux OS), Keil (RTX OS), Orion (Brew MP OS), and STMicro Discovery.

2.2 Starting the VM Proxy on the Desktop

To use the VM Proxy, extract the files from your copy of the Oracle Java ME Embedded ZIP archive on the Windows desktop. The VM Proxy program is found as a JAR file inside the util directory of the Oracle Java ME Embedded distribution, named proxy.jar. You can start the VM Proxy on the desktop host computer either in a server or a client mode as described below.

2.2.1 Server Mode Connection

The server mode is used by default. In this mode, the VM Proxy must be started after the Java runtime is started on the embedded board. Then do the following.

  1. Change to the util directory on your desktop host and enter the following command. You should see an output similar to the following:

    C:\mydir\util> java -jar proxy.jar -socket <Raspberry Pi IP Address>
    
    Channel 8 CLOSED -> AVAILABLE
    Trying to open socket connection with device: <IP Address>:2201
    Connected to the socket Socket[addr=/<IP address>, port 2201, localport=54784]
    Debugger Connection initialized
    

2.2.2 Client Mode Connection

To switch to a client mode connection, perform the following steps.

  1. Edit the jwc_properties.ini file on the embedded board as follows:

    • Set the proxy.connection_mode property to the client value.

    • Set the proxy.client_connection_address property to the IP address of the host running the Developer Agent.

  2. Start the Java runtime on the embedded board.

  3. Change to the lib directory on your desktop host and enter the following command. You should see an output similar to the following:

    C:\mydir\util> java -jar proxy.jar
    Starting with default parameters: -ServerSocketPort 2200 -jdbport 2801
    Channel 8 CLOSED -> AVAILABLE
    Waiting for device connections on port 2200
    

By default, the proxy listens for CLI connections at 65002 port on the host. The port can be changed by passing the -cliport option while launching the proxy.

2.3 VM Proxy Options

The following options are available when starting the VM Proxy using the java -jar proxy.jar command.

no options - runs proxy with default transport. The host opens a server socket and waits for a connection from the embedded device. This means the Java Embedded runtime should be started on the device with its jwc_properties.ini file containing the following settings:

proxy.connection_mode=client
proxy.client_conncetion_address=(IP address of VM Proxy)

-socket <IpAddress> - runs the proxy as a client. This means that the device should open a server socket and wait for a connection from the host. The Java Embedded runtime should be started on the device with its jwc_properties.ini file containing the following setting:

proxy.connection_mode=server

-serial <COM_PORT> - runs the proxy with a serial transport. This means that the VM proxy communicates with device across the specified serial port.

-debug - Adds additional debugging information when the VM proxy is running.

2.4 Using the Command Line Interface

Once the VM proxy is running on the desktop, you can use the AMS CLI. The easiest way to do this is to start a PuTTY executable on your desktop computer, and connect to localhost at port 65002. This is shown in Figure 2-1. See the appropriate Getting Started Guide for your embedded board for platform-specific information on using the Command Line Interface.

Figure 2-2 PuTTY Configuration

Description of Figure 2-2 follows
Description of "Figure 2-2 PuTTY Configuration"

The window from port 65002 provides a command-line interface (CLI), and is shown in Figure 2-2:

Figure 2-3 Command-Line Interface

Description of Figure 2-3 follows
Description of "Figure 2-3 Command-Line Interface"


WARNING:

The command-line interface (CLI) feature in this Oracle Java ME Embedded software release is provided only as a concept for your reference. It uses insecure connections with no encryption, authentication, or authorization.


The following CLI commands are available for developers. When a command is only available for a specific embedded platform, it is shown in the description.

2.4.1 ams-install

Installs IMlets on the embedded device.

Usage

ams-install <URL> [auth=<username>:<password>] [hostdownload]

Parameters

This command takes the following parameters:

Parameter Description

<URL>

Specifies the JAD/JAR location. The URL may contain credentials to access the JAD/JAR server (e.g. http://username:password@host/...).

hostdownload

Downloads the JAR file using HTTP and then installs it to device via the tooling channel. Applicable for JAR files only.

auth

Specifies the user credentials to access the JAD/JAR server.


Responses

This command may return the following responses:

Response Description

<<ams-install,start install, <URL>

Information message about the start of the installation process.

<<ams-install, install status: stage stage , %percentage%

Information message about the installation progress

<<ams-install, OK,install success

Information message about the installation completing.

<<ams-install,FAIL,missing parameters. see help.

The URL is not specified.

<<ams-install,ERROR,unknown parameter: unexpected. see help.

An unexpected parameter was found.

<<ams-install,ERROR,duplicate parameter: auth. see help.

One or more parameters were found two or more times.

<<ams-install,FAIL,credentials must be specified once: in url or in auth parameter

Credential info specified twice: in <URL> and in <auth> parameter.

<<ams-install,FAIL,can't download jar data from <URL>

An error occurred while downloading the JAR in hostdownload mode.

<<ams-install,FAIL,errorCode errorcode, errorMessage : message

Installation was aborted for some reason, described in error message.

<<ams-install,FAIL, error occurred exception

An unexpected error occurred. Note that this response is added for debugging purposes and to avoid confusion.


2.4.2 ams-list

Shows a list of installed IMlets on the device or in the specified suite. If no arguments are specified, the ams-list command will return a list of all installed suites. If a suite's index or name/vendor combination are used, the command will list the suite's midlets.

Usage

ams-list [<index> or <name>|<vendor>]

Parameters

This command takes the following parameters:

Parameter Description

<index>

Specifies the suite via its index number.

<name>|<vendor>

Specified the suite via its name and vendor


Responses

This command may return the following responses:

Response Description

<<ams-list,FAIL,invalid parameters

Unexpected parameters were found

<<ams-list,OK,0 suites are installed

No suites were found on the device

<<ams-list,0.name|vendor,status

...

<<ams-list,N.name|vendor,status

<<ams-list,OK,N suites are installed

List of installed suites with details

<<ams-list,FAIL,invalid parameter

Parsing the suite's index failed or the | character was missed

<<ams-list,FAIL,not found

The suite was not found

<<ams-list,1.midlet,status

...

<<ams-list,N.midlet,status

<<ams-list,OK,N midlets are installed in suiteName|suiteVendor

List of the installed midlets in the suite. Note that each suite status can be RUNNING or STOPPED.


2.4.3 ams-update

Updates the specified suite.

Usage

ams-update <index> or <name|vendor> [auth=<username>[:<password>]]

Parameters

This command takes the following parameters:

Parameter Description

<index>

The index of the suite to be updated. To obtain the suite index, use the ams-list command.

<name>|<vendor>

Specifies the suite to be updated via its name and vendor.

auth

Specifies the user credentials to access the JAD/JAR server.


Note: The suite's <index> or <name|vendor> combination is mandatory and must be placed first.

Responses

This command may return the following responses:

Response Description

<<ams-update,FAIL,missing parameters. see help.

Missing parameters (the suite's index or name|vendor combination is not specified)

<<ams-update,ERROR,unknown parameter: parameter. see help.

An unexpected parameter was found.

<<ams-update,ERROR,duplicate parameter: parameter. see help.

A duplicate parameter was found

<<ams-update,ERROR,Can't update suite suiteIndex (suiteName|suiteVendor): download url is not specified.

The download URL is not specified. For suites, installed in hostdownload mode, see the ams-install command.

<<ams-update,FAIL,not found

Suite not found. Either the suite was removed or the index / name|vendor identifier was specified incorrectly.

<<ams-update,start install, <URL>

Information message about the update process starting.

<<ams-update, install status: stage stage , percentage%

Information message about the update progress

<<ams-update, OK,install success

Information message about the update process completing.

<<ams-update,FAIL, errorCode errorcode, errorMessage : message

The update was aborted for some reason, as described in the error message.

<<ams-update,FAIL, error occurred exception

An unexpected error occurred. Note that this response is added for debugging purposes and to avoid confusion.


2.4.4 ams-remove

Removes the specified suite from device.

Usage

ams-remove <index or name|vendor>

Parameters

This command takes the following parameters:

Parameter Description

<index>

The index of the suite to be removed. To obtain the suite index, use the ams-list command.

<name>|<vendor>

Specifies the suite to be removed via its name and vendor


Responses

This command may return the following responses:

Response Description

<<ams-update,FAIL,missing parameters. see help.

Missing parameters (suite's index or name|vendor not specified)

<<ams-remove,OK,removed

The suite was successfully removed:

<<ams-remove,FAIL,not found

The suite was not found. Either the suite has been already removed, or the <index>/<name|vendor> identifier was specified incorrectly.

<<ams-remove,FAIL,locked

The suite is locked and cannot be removed. The suite is likely in the RUNNING state. The ams-stop command must be called first.

<<ams-remove,FAIL,not allowed

The user doesn't have permissions to remove suites.


2.4.5 ams-run

Run default suite's MIDlet or MIDlet, specified wit [MILET_ID] parameter

Usage

ams-run <index or name|vendor> [<id>]

Parameters

This command takes the following parameters:

Parameter Description

<index>

Index of suite to be run. To obtain the suite index, use the ams-list command.

<name>|<vendor>

Specifies the suite to be launched via its name and vendor

<id>

The index of midlet in the suite to be run.


Responses

This command may return the following responses:

Response Description

<<ams-run,FAIL,invalid parameters

Unexpected parameters were found.

<<ams-run,FAIL,failed to start

Cannot start the midlet. The index of the suite or midlet was specified incorrectly.

<<ams-run,FAIL,already started

The suite has been already started.

<<ams-run,OK,started

The suite was started successfully.


2.4.6 ams-stop

Stops the default MIDlet, or the MIDlet with the specified ID if given.

Usage

ams-stop <index or name|vendor> [id]

Parameters

This command takes the following parameters:

Parameter Description

<index>

Index of suite to be stopped. To obtain the suite index, use the ams-list command.

<name>|<vendor>

Specified the suite to be stopped via its name and vendor

<id>

The ID of midlet in the suite to be stopped.


Responses

This command may return the following responses:

Response Description

<<ams-stop,FAIL,invalid parameters

Unexpected parameters were found

<<ams-stop,FAIL,not found

Cannot stop the midlet. The index of the suite or midlet was specified incorrectly.

<<ams-stop,OK,started

The suite was stopped successfully


2.4.7 blacklist

Blacklists clients and applications.

Usage

blacklist -client <name>

blacklist -app <name|vendor>

Parameters

This command takes the following parameters:

Parameter Description

<name>

The name of the client to be blacklist.

<name>|<vendor>

Specifies the suite to be blacklisted via its name and vendor


Responses

This command may return the following responses:

Response Description

<<blacklist,FAIL,invalid parameters

Unexpected parameters were found

<<blacklist status OK

The command was successful.


2.4.8 properties-list

Shows the list of names of properties which control Java ME runtime, common to the java_properties.ini file. Note that a property type may be only INT, STRING or BOOL. The read/write flag value may be only read/write or read only, and a BOOL property value may be only true or false.

Usage

properties-list [-l]

Parameters

This command takes the following parameters:

Parameter Description

-l

Use the long listing format with properties' types, values and readonly flags.


Responses

This command may return the following responses:

Response Description

<<properties-list,AMS_MEMORY_LIMIT_MVM AMS_MEMORY_RESERVED_MVM AuthenticationName AuthenticationPwd btgoep btl2cap btspp cbs ...

The response without the long listing flag. Shows property names separated by a space.

<<properties-list,OK

read/write INT AMS_MEMORY_LIMIT_MVM = -1

read/write INT AMS_MEMORY_RESERVED_MVM = 100

read/write STRING AuthenticationName = user

read/write STRING AuthenticationPwd = password

read only BOOL microedition.deviceid.isunique = false

read only BOOL microedition.devicevendor.isunique = false

The response with the long listing flag.

<<properties-list,FAIL,invalid parameters

<<properties-list,Usage: properties-list [-l]

<<properties-list,list of properties which control Java ME runtime

<<properties-list, -l use a long listing format

An unexpected parameter was found

<<properties-list,OK,there is no property found

An empty list of properties was found.

<<properties-list,FAIL,connection is closed

An IOException has occurred.


2.4.9 get-property

Shows the value of requested property. If the property is not defined, the command shows an empty string as its value.

Usage

get-property <name> [-i]

Parameters

This command takes the following parameters:

Parameter Description

-i

Displays additional property information


Responses

This command may return the following responses:

Response Description

<<get-property,OK,imc = com.sun.midp.io.j2me.imc.ProtocolPushImpl

The property was found (without displaying additional information)

<<get-property,OK,dummy.property =

The property value is empty or not a set (without additional information)

<<get-property,OK, read/write STRING imc = com.sun.midp.io.j2me.imc.ProtocolPushImpl

The property is found (with -i flag)

<<get-property,OK, read/write STRING dummy-property =

The property value is empty or not a set (with -i flag)

<<get-property,FAIL,invalid parameters

<<get-property,Usage: get-property name [-i]

<<get-property,shows value of string property 'name'

<<get-property, -i display property info

An unexpected parameter was found

<<get-property,FAIL,illegal argument [info]

<<get-property,Usage: get-property name [-i]

<<get-property,shows value of string property 'name'

<<get-property, -i display property info

The wrong flag format was used(e.g. using -info instead of -i)

<<get-property,FAIL,connection is closed

An IOException has occurred.


2.4.10 set-property

Sets the new value for the requested property. If the property controls the Java ME Runtime (i.e., it is defined in the java_properties.ini file), it cannot be rewritten unless the read-only flag is disabled. Note that properties are verified for type correctness. The value of a BOOL property may be any string. However, only "true" (case insensitive) is considered a true value; any other string is considered to be false.

The new value for a property that controls the Java ME Runtime will be applied only after a VM reboot. In this case, only the latest set-property command will have an effect after reboot. New values for other properties can be read just after the get-property command has finished.

Usage

set-property <name> <value>

Parameters

This command takes the following parameters:

Parameter Description

<name>

The name of the requested property

<value>

The new value for the property.


Responses

This command may return the following responses:

Response Description

<<set-property,OK,imc = new.value

The operation completed successfully.

<<set-property,FAIL,illegal number [hello].

<<set-property,Usage: set-property name value

<<set-property,sets 'value' to property 'name'

The value type is not a number when property type is INT:

<<set-property,FAIL,illegal argument [microedition.devicevendor.isunique] or [true].

<<set-property,Usage: set-property name value

<<set-property,sets 'value' to property 'name'

The property is read-only:

<<set-property,FAIL,invalid parameters.

<<set-property,Usage: set-property name value

<<set-property,sets 'value' to property 'name'

Wrong number of parameters:

<<set-property,FAIL,connection is closed

An IOException has occurred


2.4.11 save-properties

Saves properties to an internal storage.

Usage

save-properties

Parameters

This command takes no parameters:

Responses

This command may return the following responses:

Response Description

<<save-properties,OK,success

Properties have been successfully saved to the internal storage

<<save-properties,FAIL

An IOException has occurred.


2.4.12 net-info

Show the network information of the system. This command only works on Qualcomm IoE devices.

Usage

net-info

Parameters

This command takes no parameters:

Responses

This command may return the following responses:

Response Description

<<net-info,OK,success getting info

Shows network information in the format <name>=<value>

<<net-info,FAIL, connection is closed

An IOException has occurred.


2.4.13 net-set

Sets a new value for the requested property of the network system. The property is verified for type correctness. This command only works on Qualcomm IoE devices.

Usage

net-set <name> <value>

Parameters

This command takes the following parameters:

Parameter Description

<name>

The name of the requested property

<value>

The new value for the property.


Responses

This command may return the following responses:

Response Description

<<net-set,OK,<NAME> = <VALUE>

The operation completed successfully.

<<net-set,FAIL,illegal first argument [<NAME>]

<<net-set ssid <SSID>:set value for WIFI access

<<net-set passwd <PASSWD>:set password for WIFI access

<<net-set pref <0|1|2|3|4|5>:set network mode preference 0:AUTO, 1:NO OP, 2:WLAN Only, 3:GSM/WCDMA only, 4:WCDMA only, 5:GSM/WCDMA/WLAN

<<net-set apn <APN>:set APN

<<net-set pdp_authtype <0|1|2>:set APN's auth type 0:NONE, 1:PAP, 2:CHAP

<<net-set pdp_username <USERNAME>:set pdp username

<<net-set pdp_password <PASSWORD>:set pdp password

An illegal type of property was encountered. The response dictates the correct syntax and property type.

<<net-set,FAIL,illegal value [<VALUE>]

The value type was not a number when the property type is INT.

<<net-set,FAIL,illegal argument [<NAME>] or [<VALUE>]

This is returned if any of arguments are null or if the property.name has an incorrect property type.

<<net-set,FAIL,connection is closed

An IOException has occurred.


2.4.14 net-reconnect

Reconnects the network and reboots Java. This command only works on Qualcomm IoE devices.

Usage

net-reconnect

Parameters

This command takes no parameters:

Responses

This command may return the following responses:

Response Description

<<net-reconnect,OK,VM will reboot. Device will reconnect to the network

The network reconnect command completed successfully. The device will be rebooted and reconnected to the network.

<<net-reconnect,FAIL

Cannot reconnect the device to the network

<<net-reconnect,FAIL, connection is closed

An IOException has occurred.


2.4.15 device-list

Prints a list of all connected devices at the current time.

Usage

device-list

Parameters

This command takes no parameters.

Responses

This command may return the following responses:

Response Description

< <<device-list,0,<IP0>:<port0>,CURRENT<<device-list,1,<IP1>:<port1>...<<device-list,<N-1>,<IPN-1>:<portN-1><<device-list,OK,N devices are connected

Printed list of devices. The "CURRENT" annotation indicates the currently seleted device that all device-related CLI command are addressed to.

<<device-list,FAIL,invalid parameters

Unexpected parameters were found. In this case, the command has no parameters, but the user has specified some:


2.4.16 device-change

Switches the currently-selected device. Once changed, all further device-related commands will be address to the newly selected device.

Usage

device-change <index>

Parameters

This command takes the following parameters:

Parameter Description

<index>

An integer index of device, as printed by the device-list command.


Responses

This command may return the following responses:

Response Description

<<device-change,OK,current device is changed

The command has been processed successfully; the current device was changed.

<<device-change,FAIL,invalid parameters

An invalid number of parameters have been specified (either no parameters or more than one parameter).

<<device-change,FAIL,incorrect device index

The index is not an integer.

<<device-change,FAIL,device not found

There is no such device.

<<device-change,FAIL,the device is already current

An attempt was made to switch to a device that is already the current device.


2.4.17 shutdown

Shutdown or restart the device.

Usage

shutdown [-r]

Parameters

This command takes the following parameters:

Parameter Description

-r

Restart the device. Note that restart is not supported on Win32 platform.


Responses

This command may return the following responses:

Response Description

<<shutdown,OK,device will shutdown!

The shutdown command was processed successfully. The device will be shutdown soon.

<<shutdown,OK,device will reboot!

The shutdown command was processed successfully, device will be restarted soon.

<<shutdown,FAIL,can't reboot device

Cannot restart the device

<<shutdown,FAIL,wrong parameters. see help.

Unexpected parameters were found.

<<shutdown,FAIL,<Error message>

Shutdown command failed due an unknown reason.


2.4.18 cd

Changes the working directory on the device.

Usage

cd <deviceDirectoryName>

Parameters

This command takes the following parameters:

Parameter Description

<deviceDirectoryName>

This specifies the directory on the device to which you want to change. The <deviceDirectoryName> can be relative to the current working directory, or an absolute path


Responses

This command may return the following responses:

Response Description

<<cd,OK

The command completed successfully

<<cd,FAIL,invalid parameters

Missing or excess parameters were encountered

<<cd,FAIL,directory not found <deviceDirectoryName>

Incorrect <deviceDirectoryName> specified

<<cd,FAIL,connection is closed

An IOException has occurred


2.4.19 delete

Deletes file on the device.

Usage

delete <deviceFileName>

Parameters

This command takes the following parameters:

Parameter Description

<deviceFileName>

Specifies the file to delete. <deviceFileName> can be relative to the current working directory, or an absolute path.


Responses

This command may return the following responses:

Response Description

<<delete,OK

The command completed successfully

<<delete,FAIL,invalid parameters

Missing or excess parameters were encountered.

<<delete,FAIL,file not found <deviceFileName>

Incorrect <deviceFileName> specified

<<delete,FAIL,connection is closed

An IOException has occurred


2.4.20 get

Copies a device file to the host.

Usage

get <deviceFileName> <hostFileName>

Parameters

This command takes the following parameters:

Parameter Description

<deviceFileName>

Specifies the file to copy. <deviceFileName> can be relative to the current working directory, or an absolute path.

<hostFileName>

Specifies the name of the file to use on the host.


Responses

This command may return the following responses:

Response Description

<<get,OK

The command completed successfully

<<get,FAIL,invalid parameters

Missing or excess parameters were encountered

<<get,FAIL,file not found <deviceFileName>

Incorrect <deviceFileName> specified

<<get,FAIL,unable to write into file <hostFileName>

Incorrect <hostFileName> specified

<<get,FAIL,connection is closed

An IOException has occurred


2.4.21 ls

Displays a list of files and subdirectories in a device directory.

Usage

ls [<deviceDirectoryName>]

Parameters

This command takes the following parameters:

Parameter Description

<deviceDirectoryName>

Specifies the directory for which you want to see a listing. <deviceDirectoryName> can be relative to the current working directory, or an absolute path. If no directory is specified, the current working directory on the device is used. In the result listing, subdirectories are marked by a trailing device file separator symbol (for example, "\" on Windows, "/" on RPi).


Responses

This command may return the following responses:

Response Description

<<ls,OK

alljavalist.txt

all_classes.zip

appdb\

bin\

classes\

classes.zip

The command completed successfully

<<ls,FAIL,invalid parameters

Excess or invalid parameters were encountered

<<ls,FAIL,directory not found <deviceDirectoryName>

Incorrect <deviceDirectoryName> specified


2.4.22 mkdir

Creates a directory on the device.

Usage

mkdir <deviceDirectoryName>

Parameters

This command takes the following parameters:

Parameter Description

<deviceDirectoryName>

Specifies the name of the new device directory. <deviceDirectoryName> can be relative to the current working directory, or an absolute path.


Responses

This command may return the following responses:

Response Description

<<mkdir,OK

The command completed successfully

<<mkdir,FAIL,invalid parameters

Missing or excess parameters were encountered

<<mkdir,FAIL,directory not found <deviceDirectoryName>

Incorrect <deviceDirectoryName> was specified

<<mkdir,FAIL,connection is closed

An IOException has occurred


2.4.23 pwd

Prints the current working directory on the device.

Usage

pwd

Responses

This command may return the following responses:

Response Description

<<pwd,OK

c:\Users\abc\javame-sdk\8.0_ea\work\EmbeddedDevice1\appdb

The command processed successfully

<<pwd,FAIL,invalid parameters

Excess parameters were encountered


2.4.24 put

Copies a local host file to the device.

Usage

put <hostFileName> <deviceFileName>

Parameters

This command takes the following parameters:

Parameter Description

<hostFileName>

Specifies the local host file to copy.

<deviceFileName>

Specifies the name to use on the device. <deviceFileName> can be relative to the current working directory, or an absolute path.


Responses

This command may return the following responses:

Response Description

<<put,OK

The command processed successfully

<<put,FAIL,invalid parameters

Missing or excess parameters

<<put,FAIL,unable to read file <hostFileName>

Incorrect <hostFileName> specified

<<put,FAIL,file not found <deviceFileName>

Incorrect <deviceFileName> specified

<<put,FAIL,connection is closed

An IOException has occurred