FAQ
General BRS Questions
What is a rules server?
Business rules cater for this isolation. Developers can specify the business decisions as a set of rules written in declarative languages instead of procedural languages, which makes them readable even by business analysts. These rules are typically maintained in a separate configuration file.
Business Rules Servers such as the WSO2 BRS allow to write, maintain and expose business rules as services, so that the entire mass of organizational business decision logic can be integrated into SOA. It makes on-time, updated business decision logic easily accessible by heterogeneous systems in and outside of the organization, and these rules can be integrated to composite, complex functionality by middleware products such as the WSO2 ESB.
What is the Open Source license of WSO2 BRS?
It is released under Apache Software License Version 2.0, which is one of the most business-friendly licenses available today.
How do I download WSO2 BRS?
WSO2 BRS is distributed completely free and the distribution packs can be downloaded from the WSO2 Oxygen Tank (http://wso2.org) or http://wso2.com under the "Products" menu. WSO2 BRS can be downloaded as a binary distribution or built from SVN source.
Is their commercial support available for WSO2 BRS?
We are committed to ensuring that your enterprise middleware deployment is completely supported from evaluation to production. Our unique approach ensures that all support leverages our open development methodology and is provided by the very same engineers who build the technology. For details, visit WSO2 Support.
Can I get involved with the BRS development activities?
Not only you are allowed, but also encouraged. You can start by subscribing to carbon-dev@wso2.org and architecture@wso2.org mailing lists. Feel free to provide ideas, feedback and help make our code better. You can also report bugs on https://wso2.org/jira/browse/BRS and submit patches. For more information on our mailing lists, refer to http://wso2.org/mail .
Core Carbon Questions
What are the technologies used underneath WSO2 BRS?
WSO2 BRS is built on top of WSO2 Carbon (http://wso2.com/products/carbon), an OSGi based components framework for SOA. Java is the primary programming language used to develop WSO2 BRS.
What are the minimum requirements to run WSO2 BRS?
Refer to BRS system requirements.
How do I deploy a third-party library into the BRS?
Copy any third-party jars into PRODUCT_HOME/repository/components/lib
directory and restart the server. WSO2 BRS converts those jars to OSGi bundles and place them in <PRODUCT_HOME>/repository/components/dropins
directory.
Can I extend the management console UI to add custom UIs?
Yes, you can extend the management console easily by writing a custom UI component and simply deploying the OSGi bundle.
Can I use a primary user store to manage and authenticate WSO2 BRS users?
Yes, you can connect WSO2 BRS with any primary user store implementation. The user store could be LDAP based, JDBC based or a custom developed user store. For details, refer to User Management .
I don't want some of the features that come with WSO2 BRS. Can I remove them?
Yes, BRS is lean and allows you to maintain just the right set of features required at the time. Simply login to the BRS management console and uninstall any unwanted features from the list of Installed Features.
Can I change the language of the management console?
Yes, WSO2 BRS comes with a UI framework which supports i18n (internationalization), which lets you to use a language of your choice for the management console.
I already have a WSO2 Governance Registry instance that contains my organization's SOA metadata. Can I get WSO2 BRS to use that registry instance as the metadata store?
WSO2 BRS integrates with WSO2 Governance Registry out of the box. Refer Registry Management for the necessary steps involved in remote registry configuration.
BRS Deployment
What Java versions are supported by the BRS?
It is tested on JDK 1.6.*. JDK 1.7.*. Sun JDK and IBM JDK are supported.
What are the minimum artifacts required to deploy WSO2 BRS?
When deploying, you can omit PRODUCT_HOME/samples
from the standard distribution.
How can I disable the management console?
You can uninstall all the UI components from the list of Installed Features. This disables the management console.
Does WSO2 BRS support application server deployments?
It is compatible with the following application servers: JBoss, Weblogic, Websphere and Tomcat.
What is the database management system used in WSO2 BRS?
WSO2 BRS is shipped with an embedded H2 database. However any database management system can be plugged into the BRS via JDBC. Database for BPEL engine persistence storage can be configured via "datasources.properties" file in <PRODUCT_HOME>/repository/conf
directory. Registry and user management related database configurations are available in <PRODUCT_HOME>/repository/conf/registry.xml
and <PRODUCT_HOME>/repository/cong/user-mgt.xml
files. For more information, refer to Working with Databases.
How can I change the memory allocation for WSO2 BRS?
The memory allocation setting are in the wso2server.sh and can be changed by editing the following configuration.
-Xms256m -Xmx512m -XX:MaxPermSize=128m
Production-Related Questions
What is a graceful shut down?
When a graceful shut down is initiated, the ESB will continue to serve the accepted requests but stops processing new ones.
What are the implications of hot deployment/hot update in a production environment?
Hot deployment/hot update may take the system to inconsistent states if the updates are not properly coordinated. Therefore it is recommended to turn hot deployment and hot update off for production deployments.
I already have a WSO2 Governance Registry instance that contains my organization's SOA metadata. Can I get WSO2 BRS to use that registry instance as the metadata store?
WSO2 BRS integrates with WSO2 Governance Registry out of the box. For steps involved in remote registry configuration, refer to Sharing Registry Space Among Multiple Products.
BRS Configuration
How can I plug a new rules engine or register new fact and result adapters?
Refer to File-Based Configuration.
Can I configure security, reliability and other QoS options for a rule service?
Yes, you can simply configure QoS through the management console or manually editing services.xml of a rule service. A rule service is similar to an axis2 service. Refer to QoS Configuration.
Can I used the rules in the mediators of WSO2 ESB ?
Yes, Rule component has been integrated to the WSO2 ESB as a mediator. There is a set of samples demonstrating it. Refer to the rule sample guide in the WSO2 ESB documentation.
When should I use a services.xml along with the rule service?
If you need to take features offered by the services.xml such as setting session scope , then you have to use a services.xml.
When should I use the rule service archive (.aar)?
If you have facts as a Jar file, rule set as a file, or if you require a services.xml (Axis2 Service Configuration), then the rule service (.aar) should be used.