Files with the extension JCX are WebLogic Workshop Java control extensions. They typically include a collection of method definitions that allow you to easily access a resource such as a database or another enterprise resource.
Note: In previous releases, JCX files were known as CTRL files. CTRL files are still supported.
The contents of a JCX file depend on the type of control the file extends. JCX files can represent the following types of controls:
For more information on WebLogic Workshop's built-in controls, see Using WebLogic Built-In Controls.
In some cases, you may use an existing JCX file that was produced by another member of your team or another organization. For example, if many web services will use the same database, a single author might create a Database control extension (JCX file) that describes the interface to the database. Then multiple web service authors might use that JCX file to create a Database Control in their service and use it to access the common database. The same situation can occur for all of the control types.
Whenever you create a control while editing a web service or other container, WebLogic Workshop generates a JCX file to contain a local representation of the control. The following are examples of situations in which a JCX file will be generated:
Note: You should not use a Web Service control to invoke a web service that resides in the same application. Invoking a web service via a Web Service control means marshalling the method parameters into a SOAP message on the calling end and unmarshalling the SOAP message on the receiving end, then again for the method return value. This is very inefficient when the invocation is local. You would usually be tempted to invoke one web service from another if the called web service included business logic you want to access from the calling web service.
In general, you should place business logic in custom Java controls instead of in web services. This allows you to access the business logic from various contexts in the application (web services, other controls, page flows) without incurring the cost of data marshalling and unmarshalling. Web Service controls should only be used to invoke web services that are truly external to your application.