| Commerce Servers Doc Home
| BEA WebLogic Portal
| BEA WebLogic Components
|  | Using WebLogic Components
|  | Hands-On Tour
|  | Complete Component Catalog
|  | Complete API in Javadoc
|  | Other References
Corporate Info | News | Solutions | Products | Partners | Services | Events | Download | How To Buy
> Our Products What does BEA WebLogic Components include? How do I get more information about BEA and WebLogic Components? How can I obtain WebLogic Components for Solaris 2.6? How do I register WebLogic Components? How can I receive information about the developer's kit? What is the relationship between Flashline.com and BEA? What support options do you offer customers? Java Technology What is a component? What is the difference between "customizability" and "extensibility" of a component? Is component technology a reality? Are your components standards-based? What version of Java does WebLogic Components support? Platforms and Servers On what application servers do your WebLogic Components run? What are the hardware system requirements for the BEA WebLogic Components product? Does the BEA WebLogic Components demo work on both Internet Explorer and Netscape? What platforms/EJB servers/databases are currently supported by BEA WebLogic Components? What application servers are supported by WebLogic Components on Solaris? What object-oriented databases do BEA WebLogic Components support? Does BEA WebLogic Components support TogetherJ? Licensing What is BEA licensing policy? What do I need to do if I get an 'Invalid License' message? UML Modeling What is Visual Modeling and the UML? How does modeling with UML (Universal Modeling Language) work for these components? Which EJB application modeling tools does BEA WebLogic Components support? Do I have to do modeling in order to use WebLogic Components? Implementing WebLogic Components How do I use your components? Do WebLogic Components basically provide a framework? What is the SmartGenerator? Can I customize WebLogic Components to suit my needs? How do I integrate WebLogic Components into my legacy systems? Can I map WebLogic Components to an existing database? Will I have to write any JDBC code in order to use my own database? What is the difference between Belongings and a normal Java class? What is a BusinessPolicy? What is a ConfigurableEntity? What does the Workflow component do? What kinds of collections do you support? What is the advantage of using the SmartHandle? Examples and Troubleshooting Where do I find the start menu in BEA WebLogic Components? How do I run the examples provided in this kit? How do I start the WebLogic buybeans server? How do I log into the BuyBeans web site? How do I start the BuyBeans administration client? When I open the model in Rational Rose, I get the following error: "$theorywork not found" Are guests allowed to add items to the shopping cart when using an ebusiness.session while browsing? Our Products What does BEA WebLogic Components include? BEA WebLogic Components has two parts: the runtime Components and the developer's kit. The runtime Components give you everything you need to build and run your application. The BEA WebLogic Components developer's kit contains tools to help you extend and customize WebLogic Components. How do I get more information about BEA and WebLogic Components? Visit our web site at www.beasys.com or email us. How can I obtain WebLogic Components for Solaris 2.6? BEA WebLogic Components 1.7 fully supports the Solaris (version 2.5 and greater) environment. How do I register WebLogic Components? Accurately complete and submit all required input fields in the (http://www.beasys.com/download.html.) form before downloading the latest version (v1.7) of our BEA WebLogic Components kit (part of BEA WebLogic Application Solutions). How can I receive information about the developer's kit? The BEA WebLogic Components developer's kit is part of the product (BEA WebLogic Components 1.7) CD or download from our Web site at http://www.beasys.com/download.html. For additional information, contact us at info@theorycenter.com. What is the relationship between Flashline.com and BEA? Flashline.com is one of our business partners and sales channels. What support options do you offer customers? The following series of Technical Support offerings are designed to support the needs of systems integrators and developers who use our BEA WebLogic Components kit to develop and deploy e-Commerce applications, as well as end-users who choose to develop their own solutions using our Smart Components. All offerings include access to FAQ's and on-line documentation as well as installation & user support, development advisory support and technical alerts. For customers evaluating BEA WebLogic Components, we offer 30 days free Technical Support along with the evaluation kit. Customers purchasing BEA WebLogic Components select one of the following (all times US Eastern): Express Support Service - Technical support via email, Web, or telephone, Monday to Friday (excluding public holidays), 9:00 a.m. - 5:00 p.m., rights to next version, and maintenance release/bug fix support. Premier Support Service - Technical support via email, Web, or telephone, Monday to Friday (including public holidays), 9:00 a.m. - 9:00 p.m., and rights to next version (major release), maintenance release, & bug fix support. Enterprise Support Service - Technical support via email, Web, or telephone, 24 hours/day, 365 days/year, and rights to next version (major release), maintenance release, & bug fix support. For more information, contact our Support team at support@theorycenter.com. Java Technology What is a component? A component, in its simplest sense, is a self-contained unit of software that does useful work. In our definition, a good component should be: easy to use, reusable, customizable, and standards-based. WebLogic Components, in addition to having these attributes, are extensible. This means they can be both customized at development time and extended at runtime. What is the difference between "customizability" and "extensibility" of a component? Customizability means that the component can be tailored to suit a particular business problem. This tailoring is done at development time. Extensibility allows you to change parts of the functionality at run-time. For example, applying individual runtime pricing using our pluggable methods. Is component technology a reality? The emergence of Sun MicroSystems' Enterprise JavaBeans (EJB) component model and the proliferation of application servers have finally made components easy to use, re-use, and deploy. Today we have technology that makes true component architectures not only real, but a compelling choice for solving complex system architectures. Are your components standards-based? Yes. Our components are based on the Java Enterprise APIs (J2EE). All our distributed components are Enterprise JavaBeans 1.0. We use all standards-based APIs such as JTS, JNDI, JDBC, and the Java 2 Collection API. What version of Java does WebLogic Components support? Currently, WebLogic Components support JDK 1.2.2 and 1.1.7b for development and runtime. They also support Java 2 for runtime only. Full Java 2 versions will be available as soon as they are supported by the application server vendors. Platforms and Servers On what application servers do your WebLogic Components run? Our components require an application server that supports EJB 1.0 or higher. Currently, we fully support BEA WebLogic. What are the hardware system requirements for the BEA WebLogic Components product? Recommended minimums - Intel Pentium II Processor (400MHz or faster), 128Mb RAM, 50Mb hard disk space. Does the BEA WebLogic Components demo work on both Internet Explorer and Netscape? The demo has been tested on all versions of IE and Netscape browsers including Netscape 4.5 on NT. What platforms/EJB servers/databases are currently supported by BEA WebLogic Components? BEA WebLogic Components are developed/deployed on the following platforms: WebLogic 4.5.1, Windows NT, Solaris 2.4 and greater, Oracle 8.0.5, and Oracle 8.1.5. What application servers are supported by WebLogic Components on Solaris? Currently we fully support BEA WebLogic application server v4.5.1. Stay tuned for other application server environments we will support in the future. What object-oriented databases do BEA WebLogic Components support? We ship BEA WebLogic Components with a sample Cloudscape database for the My BuyBeans.com example implementation (demo). You can use any major JDBC-compliant database product (e.g., Cloudscape, Oracle, Informix, Sybase, DB2, etc.). Does BEA WebLogic Components support TogetherJ? The current release of BEA WebLogic Components integrates with Rational Rose only. We are currently researching other modelers, such as TogetherJ, to determine which should be integrated with our product. Licensing What is BEA licensing policy? You can purchase a Developer license intitially which provides full access to all 80 WebLogic Components, SmartGenerator, as well as plug-ins for developing in a Rational Rose modeling. When ready to deploy an application based on our WebLogic Components, the customer can purchase a runtime license. Contact our Sales department at info@theorycenter.com for detailed pricing information. What do I need to do if I get an 'Invalid License' message? Contact Technical Support at support@theorycenter.com. UML Modeling What is Visual Modeling and the UML? Visual modeling is a way of describing processes and solutions graphically by mapping real world objects and actors to artifacts on a diagram. Visual models at various levels of abstraction provide mechanisms for developers, business analysts, and others involved with a project - often from divergent domains - to arrive at a common understanding of the problem and to communicate with each other. Visual models abstract the essentials of complex problems and systems by filtering out non-essential information, and by breaking processes into their constituent parts, thus making them easier to understand. In addition, formal modeling methodology allows analysts and designers to focus on what a system's components are and the work they must accomplish, without getting bogged down in the specific details of "how". In turn, developers and architects can derive from these models the data-flow and data-model requirements, and push the model to a deeper level of detail - while maintaining the high-level vision of the solution. Visual modeling has generally been standardized on the Unified Modeling Language (UML). UML provides a robust transition between the business domain and software development, and standardizes analysis and design using semantic models, syntactic notation, and various diagram types. How does modeling with UML (Universal Modeling Language) work for these components? Using a UML tool such as Rational Rose 98i, you can model your components visually: their stereotypes, attributes, methods, and relationships - such as aggregation using collections - with other components. If you are using the WebLogic Components developer's kit, you can extend WebLogic Components and invoke the SmartGenerator from Rational Rose to turn your models into fully-functional EJB Components instantly (i.e., without writing any EJB code). Support for other UML modeling tools is in the works. For more information, refer to our technical paper on modeling with eBusiness Smart Components. Which EJB application modeling tools does BEA WebLogic Components support? The current release of BEA WebLogic Components supports Rational Rose 98i. Rational Rose 2000 will be certified in a coming release. We are currently researching other modelers, such as TogetherJ, to determine which should be integrated into our product. Do I have to do modeling in order to use WebLogic Components? No. Although WebLogic Components development tools work hand-in-hand with modeling, you can customize and extend WebLogic Components by hand, without using modeling or special tools. It's just a lot more work! Implementing WebLogic Components How do I use your components? Components are used by writing client-side code in Java. This client-side logic uses the components' exposed methods and APIs to do useful things. Client-side code can be plain JavaBeans, or embedded into servlets, JSP, Java GUIs, or a combination of approaches. Connections to components (remote method invocations) can be carried over a variety of protocols, including http, RMI, CORBA, proprietary protocols, and more. Do WebLogic Components basically provide a framework? No. The BEA WebLogic Components product provides a "bag of beans" for eBusiness software development - use as many or as few as you require to get your eBusiness application up and running. In our definition, a framework is something that requires developers to use it either completely, or not at all. "True" components allow application assemblers to pick and choose the components that help solve specific parts of a larger problem. "True" components also allow the application assembler to extend the components with custom logic at both development time and runtime. These are our design principles for rapidly building "dot-com scale", flexible eBusiness applications. What is the SmartGenerator? The SmartGenerator is part of the WebLogic Components developer's kit. It is an advanced tool that can generate complete WebLogic Components from a UML model. The UML model is independent of a modeling tool, although the Developer's kit includes an automated Rational Rose plug-in. The SmartGenerator has complete round-trip engineering. This means that you can make additions to the generated code, and you won't lose your changes when you re-generate. The SmartGenerator can do component inheritance, various types of component collections, pluggable methods, and more. It generates interfaces, implementations, homes, keys, and database persistence classes. Can I customize WebLogic Components to suit my needs? Yes. WebLogic Components can be customized in a variety of ways: they can be extended, either by hand or visually using special tools; they can be configured at runtime with persistent properties; they can use "pluggable methods" that can be programmatically chosen, either during development or at runtime. Using inheritance, they can be up-casted or down-casted as needed. All WebLogic entity components can be mapped to any database. They are very flexible! How do I integrate WebLogic Components into my legacy systems? There are several ways to do this. The simplest way is to make a component invoke API calls into the legacy systems (e.g. CICS, IMS). These calls can be programmed in, or "plugged-in" at runtime as Business Policies. By setting runtime properties, you can change the way a component may call an external interface. Another way is to map the component to a legacy database, in effect giving that database a distributed, object-oriented Java interface. Can I map WebLogic Components to an existing database? Yes. All WebLogic entity components can be mapped to any relational database. Database mapping takes place in the deployment descriptor. WebLogic Components can use both container-managed persistence and bean-managed persistence, so they are not locked-into a particular schema or database. Will I have to write any JDBC code in order to use my own database? If you are using bean-managed persistence, you have to write the JDBC code to go to your own database. WebLogic Components currently provide extensive examples to help you do this. Smart Generator can generate this JDBC code from UML to save you time. What is the difference between Belongings and a normal Java class? Belongings have special functionality that makes them different from normal Java classes. Specifically: Belongings use the abstract factory pattern. You don't new() them, you use Home.create(). Since the interface and the implementation are separated, you can replace the implementation part while still using the same interface and not modifying your client code. You can replace the implementation of a belonging at runtime using the theory/. properties file. Belongings are automatically comparable. That means that if you have two Address belongings (each with many attributes), you can compare them, and order them into various types of collections. What is a BusinessPolicy? A Business Policy is a pluggable method. During both development and runtime, you can interchange Business Policy objects programmatically, to perform the correct business logic for the situation. A pricing policy is a good example. You can change the way you price an item dynamically, based on any conditions. Business Policies follow design patterns known as "Strategy Patterns" and "Individual Instance Methods". What is a ConfigurableEntity? A ConfigurableEntity is an Entity EJB that has runtime properties. These properties are associations between a key and an object of any type (including BusinessPolicy objects). Properties are persistent. Also, ConfigurableEntity implements the "Chain of Responsibility Pattern", that allows you to search for a property within a hierarchy of Entities. (E.g. progressively look for a discount for a product, shelf, aisle, store, region, country, etc.) What does the Workflow component do? A Workflow component acts in many ways like a state machine. It is always in a discrete state. Transitions between states are transactional (atomic). The context of a workflow is always persisted, so it can always recover from failures into a consistent state. States and transitions are associated with triggers and events. The workflow object can organize a business process and make sure it always executes in the right order, and you always know where you are in that process. Any WebLogic component can have a workflow associated to it. Workflow state diagrams are drawn using the UML and subsequently generated into customized code using the SmartGenerator. What kinds of collections do you support? We currently support the following collections: Map (acts like a Hashtable), List (ordered), Set, and Array. Collections can be iterated both locally and remotely, to accommodate different needs (efficient access to large collections or fast, repeated access to small collections). WebLogic Components collections use the standard Java 2 Collection API (even if you are running under Java 1.1.6 or 1.1.7B.) What is the advantage of using the SmartHandle? The EJB 1.0 specification uses the EJB Handle to manage an EJB object reference. The disadvantage is that the EJB Handle cannot be mapped to a multi-column table in a relational database. Some implementations of EJB Handle also contain the server IP address of the EJB object. This impairs portability of the EJB object. ANother drawback is that comparison between two EJB Handles is impossible without instantiating the actual EJB object. We created something called SmartHandle. SmartHandle extends the capability of EJB Handle. It can be mapped to a multi-column relational database table. It does not store the EJB Handle to the database, but it stores the primary key. It also allows for fast comparison of two EJB Handles without instantiating the actual EJB object. Examples and Troubleshooting Where do I find the start menu in BEA WebLogic Components? To see the BuyBeans.com demo that you have installed on your machine you must have the BuyBeans.com server running. Follow these simple steps: Open your Start menu and choose Programs > WebLogic Application Solutions. In the next submenu select Examples. In the next submenu select My BuyBeans.com server. You will need at least 128 Mb of memory. If you have a slow machine it may take several minutes. You will see the WebLogic server scrolling. Wait until it displays "Listening on port: 7601" at the bottom of the screen. This indicates that WebLogic (the server that contains the WebLogic Components) is ready. You can now go to http://localhost:7601 in your browser and see the BuyBeans.com eCommerce site demo. How do I run the examples provided in this kit? Follow the directions in our "technical tour" using the scripts provided under the installation directory. How do I start the WebLogic buybeans server? From your Start Menu, find the WebLogic Application Solutions program menu, go to Examples, and click My BuyBeans.com server. How do I log into the BuyBeans web site? To log into the buybeans web site, start up your default web browser and go to the following URL http://localhost:7601/. The default login fields are username : cool, password : bean. You may also register as a new user by clicking on the register link. How do I start the BuyBeans administration client? From your Start Menu, select WebLogic Application Solutions, go to Examples, and click My BuyBeans.com Application Admin Tool. You may also start the admin application by executing the following command
>     ..\weblogicac\bin\win32\buybeans_admin.bat
To log into the admin client, the username and password fields should be empty. When I open the model in Rational Rose, I get the following error: "$theorywork not found" This can happen if you install Rational Rose after you install BEA WebLogic Components. $theorywork is a Rational Rose environment variable that specifies the top level directory of the BEA WebLogic Components model files. This environment variable is set during BEA WebLogic Components install if Rational Rose is already installed. To set this variable if you install Rational Rose after you install BEA WebLogic Components, do the following: Start Rational Rose. Choose Edit Path Map... from the File menu. This will open a new dialog with the title Virtual Path Map. In the dialog type theorywork in the Symbol field. In the Actual Path field type the full path of the model directory under your BEA WebLogic Components install directory, or browse to it using the browse button. For example, if your BEA WebLogic Components install directory is C:\BEA WebLogic Components , then $theorywork should point to C:\BEA WebLogic Components\theorycenter\mode l. Are guests allowed to add items to the shopping cart when using an ebusiness.session while browsing? Guests can certainly add items to the cart using our sample application, My BuyBeans.com. The application developer determines which functions are available only to authenticated users. The My BuyBeans.com sample application is very flexible! How can I configure the shopping advisor to return items that have all the qualities in the customer profile? When the matchall attribute is set the shopping advisor ensures that all of the characteristics specified in the query are matched. How can I resolve a http:404 error? Make sure you review your browser set-up options. Ensure that the browser clears its stored cache and reloads all Web pages before running the BuyBeans.com demo package. What is the solution when a DOS session opens displaying the following message "Out of environment space", followed by a line that says "Bad command or filename"? Reboot your PC after installing the BEA WebLogic Application Solutions software, because during the installation the following line is added to the config.sys file: shell="C:\command.com/p/e:32000 " Note: This problem should occur only in a Windows 98 environment. BEA WebLogic Application Solutions is certified only for Windows NT. Why does this error message occur: "TRANSACTION_SERIALIZABLE" or "transaction_read_committed is only allowed here", while trying to run My BuyBeans.com against the Oracle 8.0.5 deployment set? There are several possible reasons for this: The correct Oracle 8.0.5 JDBC Driver is not installed. This driver can be downloaded from the Oracle web site. You are not running against Oracle 8.0.5. We have only tested against Oracle 8.0.5. Deploying against another database may require you to change the transaction isolation level in the deployment descriptors, re-run the EJB compiler, and re-deploy the beans.