type=page
status=published
title=package-appclient
next=manvol5asc.html
prev=capture-schema.html
~~~~~~

= package-appclient

[[package-appclient-1m]][[GSRFM00264]][[package-appclient]]

== package-appclient

Packs the application client container libraries and jar files

[[sthref2387]]

=== Synopsis

[source]
----
package-appclient
----

[[sthref2388]]

=== Description

Use the `package-appclient` command to pack the application client
container libraries and jar files into an `appclient.jar` file, which is
created in the as-install``/lib`` directory on the machine on which
{productName} is installed. The `appclient.jar` file provides an
application client container package targeted at remote hosts that do
not contain a server installation.

After copying the `appclient.jar` file to a remote location, unjar or
unzip it to get a set of libraries and jar files in the `appclient`
directory under the current directory.

After unjarring on the client machine, modify
`appclient/glassfish/config/asenv.conf` (`asenv.bat` for Windows) as follows:

* set `AS_WEBSERVICES_LIB` to path-to-appclient`/appclient/lib`
* set `AS_IMQ_LIB` to path-to-appclient`/appclient/mq/lib`
* set `AS_INSTALL` to path-to-appclient`/appclient`
* set `AS_JAVA` to your JDK 7 or JRE 7 home directory
* set `AS_ACC_CONFIG` to
path-to-appclient``/appclient/glassfish/domains/domain1/config/sun-acc.xml``

Modify `appclient/glassfish/domains/domain1/config/sun-acc.xml` as follows:

* Ensure the `DOCTYPE` file references
  path-to-appclient``/appclient/glassfish/lib/dtds``
* Ensure that `target-server` address attribute references the server machine.
* Ensure that `target-server` port attribute references the ORB port on
  the remote machine.
* Ensure that `log-service` references a log file; if the user wants to
  put log messages to a log file.

To use the newly installed application client container, you must do the
following:

* Obtain the application client files for your target application,
  including the generated yourAppClient.jar file.
* Execute the `appclient` utility: ``appclient -``client yourAppClient.jar

[[sthref2389]]

=== Attributes

See
http://www.oracle.com/pls/topic/lookup?ctx=E18752&id=REFMAN5attributes-5[`attributes`(5)]
for descriptions of the following attributes:

[width="100%",cols="50%,50%",options="header",]
|===
|ATTRIBUTE TYPE |ATTRIBUTE VALUE
|Interface Stability |Unstable
|===


[[sthref2390]]

=== See Also

link:appclient.html#appclient-1m[`appclient`(1M)]


