Deploying a component to EAServer
PowerBuilder VM must
be available on the server
You can deploy components to EAServer hosts
running Windows, UNIX, and Linux. The version of the PowerBuilder
VM on the development computer must also be available on the server.
To find out which versions of EAServer and
the PowerBuilder VM are available on each platform, contact your
sales representative or check the Sybase Web site
.
The PowerBuilder VM includes PBVM120.DLL, PBJAG120.DLL, PBDWE120.DLL,
and other PowerBuilder files required at runtime. On UNIX and Linux,
the shared libraries are called libpbvm120x.ext, libdwe120x.ext,
and so forth, where ext is the shared library
extension for each platform. EAServer uses
a version of the PowerBuilder runtime files, identified by the x at
the end of the file name, that does not provide support for Windows
API calls or graphical operations, including printing.
Consuming a .NET Web service from a PowerBuilder NVO If you call a .NET Web service from a PowerBuilder component
running in EAServer, you must
deploy the Sybase.PowerBuilder.WebService.Runtime.dll, Sybase.PowerBuilder.WebService.RuntimeRemoteLoader.dll and
the dynamically generated .NET assembly to the EAServer bin directory.
EAServer supports multiple
versions of the PowerBuilder VM on the same server. Components built
with different versions of PowerBuilder can coexist on the same
server as long as the required version of the PowerBuilder VM is available
on the server.
When you deploy a component from PowerBuilder 12.0 to EAServer, the component is associated
with the version of the PowerBuilder VM that you are using. The
com.sybase.jaguar.component.pb.version property is set to 12.0 on the
All Properties tab page of the component’s property sheet in EAServer Manager for EAServer 5.x. In EAServer 6.x, it displays on the
General property page for the component under the CORBA Packages
node.
If you do not use the PowerBuilder development environment
to deploy a PowerBuilder component to EAServer,
you can specify the correct version of the VM for the component
on its property sheet in EAServer Manager.
If you deploy a PowerBuilder component to a server that does
not have the version of the PowerBuilder VM used in the development
environment, the deployed component cannot be instantiated.
About deploying EAServer components
To deploy a component to EAServer,
create a new project and build the project. The new project lists
the objects that will be included and specifies the name of the
output library that will contain the generated components.
Making DataWindow definitions available If your scripts reference DataWindow objects dynamically,
you must check the Include Unreferenced Objects in Consolidated
PBD box in the wizard or painter to make the DataWindow definitions
available to the component.
How to deploy the component
To deploy a component to EAServer,
open the project created by the wizard and select Design>Build
Project.
What happens when you deploy to EAServer
When you deploy components to EAServer,
the component generator performs these operations:
- Generates CORBA IDL that describes the nonvisual objects you
selected for deployment
The IDL is in turn used to build stubs and skeletons. The
names of the IDL file, the stubs, and the skeletons are based upon
the name of the object.The component generator stores the new IDL in the Repository subdirectory
of the EAServer installation directory. - Generates one or more PBD files
for the deployed component
The PBD files are stored in the following
subdirectory of the EAServer installation
directory: RepositoryComponentpackagecomponentCcookiewhere cookie represents the number for
this generation of the build. If the library name is not qualified
(no path is specified), the component generator prepends a dollar
sign ($) to the name. By default, EAServer uses
the most recent version of the component. - If deploying to EAServer 6.0
and later, calls the Jaguar Compiler command line tool to wrap the
components as EJBs.
This involves mapping the entire PB CORBA package MyPackage to
an EJB module mypackage.jar and deploying the
EJB-JAR with the same package name.Deployment also generates Ant XML configuration scripts that
you can use to alter the runtime configuation for deployed EJB-JAR
components in the EAServer config folder. - If deploying to EAServer 5.x,
generates a PROPS file that describes the properties
of the EAServer component
The PROPS file is stored in the following
subdirectory of the EAServer installation
directory: RepositoryComponentpackage-name.
Cleaning up the EAServer repository
In EAServer 6.0 and later,
you can use the EAServer Web Console to configure the cleanup of
older versions of PowerBuilder components as a regularly scheduled
task (CleanupPBCookies). For earlier versions of EAServer, you can
reclaim disk space by removing directories you no longer need using
the following procedure:
To delete unwanted directories and PBD files:
-
Delete all directories except the most
recent. -
Rename the remaining directory to C1.
-
Set the value of the pb.cookie property to 1 on
the All Properties tab page of the property sheet for the component
in EAServer Manager or the Advanced
tab page in the Management Console. -
Restart EAServer.
Changing the component’s codeset
Any EAServer component deployed by PowerBuilder
automatically uses the code set of the server. If you want your
component to use a different code set, set the component’s
com.sybase.jaguar.component.code.set property to an appropriate
value.
In EAServer Manager, you
can do this in the Component Properties dialog box on the All Properties
tab page. Add the com.sybase.jaguar.component.code.set property
and specify an appropriate value such as big5 or iso_1.
In the Management Console, select a value from the Code Set drop-down
list on the General page.
If EAServer was started using the utf-8 codeset
and your component returns a string containing the Euro and/or
British pound symbol, set the code.set property to cp1252.