ProductsDetailed Features
Architecture
iPLAss can be divided into two parts. The first part is the iPLAss framework which mainly based on JavaEE and Groovy technology-stacks. The second part is WAM (Web Account Manager) which serve as a HTTP server plugin module.
iPLAss framework has submodules such as GEM (Generic Entity Manager) and Admin Console. The developer can build Web applications by configure about its behaviors, and also create custom logic if needed.
WAM plugin module will run on HTTP server to hook up the contents (and also the external back end softwares if any) from accesses. As a customer membership management functionality implementation, WAM also help to redirect the unauthenticated user to the login pages,and manage the access authority depending on the roles of the user.
Environment
iPLAss framework
Web Server | Tomcat 10.1 (web container implementing Servlet 6.0 and JSP 3.1 or higher) Java 21 |
---|---|
Data Base | Oracle 19c or higher, MySQL 8.0 or higher, PostgreSQL 12 or higher, SQL Server 2016 or higher, Amazon Aurora |
Web Browser | Google Chrome, Safari, Mozilla Firefox, Microsoft Edge |
Web Account Manager plugin module
Apache ver. | Apache HTTP Server 2.4 |
---|---|
IIS ver. | IIS 8.5 or higher .NET 4.5.1 or higher Windows Server 2012R2 or higher |
JavaEE ver. | Tomcat 10.1 (web container implementing Servlet 6.0 and JSP 3.1 or higher) Java 21 |
Serverless(JavaScript) ver. | Serverless environment (edge environment running on the front end of CDN, etc.) where JavaScript runtime supporting Fetch API is provided |
Functionality
Defining and Managing the Data
Managing the Metadata
The data that are administrated by iPLAss are named as 'Entity'. Entity is equivalent to the table of RDB. Each entity has 'Properties', which are equivalent to the columns of a table in the concepts of RDB. Applicaion's administrators can define and manage data on web browser. Beside the data definition, the administrators can also configure on how the data are presented (such as which data should be visible, should it be an input field, pull-down button etc. And whether to show data in orders) to the customer. The modified changes will reflect on webpages immediately after a page refresh. In iPLAss, the objects which serve as the definition of the data and how the data behave in the application, are called as 'metadata'. There are several more kinds of metadata beside the data definitions. They can be managed from the web console.
Data Management
The user can create, update, delete, and search the defined Entities. In addition, the function of data version control, full text search, automatic numbering, recycle bin, LOB data storages are provided. Entity has 'Event Listeners' property as the equivalent of trigger in RDB. By defining event Listeners, the user can accomplish and customize the logics that are not provided by iPLAss.
Data Management GUI (Generic Entity Manager)auto-constructed
The control panel to manage data is constructed automatically. By defining the 'Role' from the security mechanisms, the developer can decide in detail about how an entity is presented to different viewers. The entity has several preset views to define how it is presented, such as Searching Overview, Detailed view, Calendar view, Tree View. Developers also can create custom logic and functions if the given GUI does not meet specific requirements. In addition, We provide a control panel that follows Material Design guidelines to manage data (Material Design Components, commonly known as MDC)*1. MDC stands out for its responsive design.
*1 The feature available for Enterprise Edition.
Advanced Data Management
Data Audit Logging*
It records the history logs of the data operations. It is possible to display the history logs on the Data Management GUI of the web pages, or on the Web console for administrators.
Encryption*
The user can choose to encrypt the data when saving the entity data to the database. The encryption can be configured specific to each property. However, if the database provides their own encryption features, it is recommanded to use the entryption function provided by the database in priority. Please consider the iPLAss encryption mechanism as the secondary option in this case, and use it only when there is difficulty to utilize the encryption provied by the database.
*The feature available for Enterprise Edition
Logic Customization
Embedding the Custom Logics
iPLAss supports the embedment of developer customized logics into the automatically constructed user interfaces. In addition, when building the websites for the consumers, the developer can fully customize the page view/functions with the given MVC based frameworks. In accompany with the frameworks, other mechanics such as the content cache mechanisms and the security coding support for XSS/CSRF solutions are also supported. The code implementation can be done by Java and Groovy. The view logic implementation can be done by JSP and Groovy Template (a JSP-like template languagge based on Groovy). In the case of Groovy/Groovy Template, the changes will instantly reflect on the site without the requirements of compilation or deployments.
Web API
RESTful WebAPI that manage the defined entities can be published if needed. In addition, the Web API with implemented custom logics can be published. The security feature such as CSRF Token, OAuth2 scope managements, CORS preflight reqest control are supplied. Web API is in the form of REST or SOAP/WSDL*.
Reports Generation
The reports can be generated in form of PDF/Excel. The reports is generated by creating/inputting the templates and then inject the Entities' data into the given templates. JasperReports, Apache POI, JXLS are used as the engine of the report generator.
* The feature available for Enterprise Edition.
Security Mechanism
Authentication
Built in authentication mechanism(ID/password based, RememberMe based)provided. In addition, the authentication provider interfaces are provided for additional customized authentication functions.
Authorization
Role based Authorization mechanism provided. The Authorization module can manage the authority over entity, action, WebAPI etc. depending on the roles and groups of the user.
OAuth2 / OpenID Connect
OAuth2 Authorization Server/OpenID Connect Provider features are provided. For third party applications (OAuth2 Client/OpenID Connect Relying Party), it is possible to add the access control via custom WebAPI(Resource)scopes and OpenID Connect based authentications.
Advanced Security Mechanism
2-step Verification*
The provided 2-step verification functions include the one-time-code via mail/SMS, and the knowledge based verifications.
User Impersonation *
The on-behalf-of login access is provided. The administrator or the preset user can log in as specific user(authority-wise) to manipulate the data.
Single Sign On(SAML2.0)*
SAML2.0's Identity Provider, Service Provider are supplied with our system. Single sign on is available along with other SAML2.0 compliant web services.
* The feature available for Enterprise Edition.
Multi-Language
Multi-Language
Data Management GUI is implemented in multiple languages. The supported language includes: Japanese, English, Chinese (Simplified, traditional), Tai languages. If additonal language is required, it can be added by preparing the language-corresponded resource files. In addition, the utility function to add descriptions of custom logics in multiple languages is provided.
Multi-Language For Entity Data
It is possible to have the Entity Data to support multiple languages. The Entity with multi-language enabled may display different values depending on the user languages.
Notification Messages
Template Management
Mail, SMS, Push and Webhook Notificaton are managed by the corresponding templates. We povide the function to inject the dynamic parameters when sending the messages. Parameter injection can be accomplished by the Groovy. Even more complicated logics can be done as well by adding code to Groovy templates.
Implementation of the Mail Messages
For the implementation of the mail messages, the support for JavaMail, Amazon SES*, SendGrid* are provided.
SMS Messages Implementation
For the implementation of the SMS message, the support for Twilio*is provided.
Push Notification Implementation
For the implementation of the push notifications, the support for Firebase Cloud Messaging is provided.
*The feature available for Enterprise Edition.
Multi-Tenant System
Multi-Tenant
The mechanism allows the logical division of the data and logics base on tenants so having multiple tenants will not interfere each other even in a single application server/DataBase server. Additional tenants can be created without interupting the server's availability.
Shared Data/Metadata Amoung Multiple Tenants
It is possible to set the data shared accross multiple tenants. For example, you can set the postal code master table a shared table for all tenant, so they can use the same data set.
Data Aggregation
Ad-Hoc Query*
The user can freely set the searching criteria and searching entries. For the data output in lists, the user can either save the snapshot of the lists, or the searching criteria. The saved data and the criteria can be reused later.
Pre-defined Aggregation*
A preset custom search that the user can specify the aggregation methods and searching criteria, and also customize the output in the form of aggregations or graphics. The application administrator can preset the customized searchs, which then can be distributed to the end-users. Multiple aggregations/graphs can be ensembled and summarized to the dashboard.
Simple BI*
Simple BI was designed so that the end-user can input the targeting data and the corresponding searching criteria and then freely accquire the wanted graphics and aggregation results.
* The feature available for Enterprise Edition.
Workflow
The Definition and Processing of the Workflow*
Workflow can be defined uppon entity data. The workflow provides variaty of utilities processes, such as the process to grant approval to specific user, to define mail-messages, to update the entity data, and to create custom logics to Workflow. In addition, it is available to define the conditional forks, joins, and timer.
* The feature available for Enterprise Edition.
Job Scheduler
Job scheduling and execution*
It is used to trigger specifc task in specified times intervals. The intervals can be configured to many forms such as "cron" type from Linux. Custom logics and workflow can be executed through job scheduler.
* The feature available for Enterprise Edition.
Developing/Managing Tools
Admin Console
Admin Console is the tools for the developers and administrators. It provides the functions to accquire data and even the metadata; modifying and moving the data over environments; run the search queries and testing tools; accquiring the server logs and etc.
CUI based tools
We provided the CUI tools which help with the usage of iPLAss based systems. The batch application that help with adding/deleting tenants is also provided.
Gradle Plugin
The Gradle Plugin for developers are provided.
Metrics Collecting*
We provides the feature to collect application metrics and link them to the monitoring system. A module using Micrometer is provided in the standard as an implementation of metric collection and linkage to the monitoring system.
Data integration using Amazon AppFlow*
Amazon AppFlow to provide data integration functionality between iPLAss and external systems (SaaS and AWS services). Provides a custom connector implementation (Zip file that can be deployed to AWS Lambda) as standard to integrate iPLAss into AppFlow as a data flow source or destination.
* The feature available for Enterprise Edition.
Web Account Manager & plugins
Member Login*
The login functionality for the consumer sites is provided. The adminisrator can also enable the RememberMe and 2-step verification systems.
Login with Social Media*
The feature of login with social media are provided, such as login with Facebook and X (Twitter) accounts. Depending on the settings, other services corresponding to Facebook, X (Twitter), OpenID Connect can be accomplished.
User Self-Registration/Update*
The registration page and functions for new customers to sign up are provided. In addition, the functionalities like mail activation while signing up, and the user profiles update after the sign up are provided.
Password Reminder*
We provides the page to reset passwords for the users who forget about their own passwords.
Static Contents Access Control*
iPLAss provide the feature of access management on static sites, contents (or the dynamic contents output to CMS servers.) When anonymous user trying to access the limited static contents, they are redirected to the iPLAss login pages. In the case of a logged in user, the system will check whether the user possesses the authority. There is no problem to have iPLAss deployed on a different server/ domain from the contents in need for protections. The plugin was designed to meet the standards of Apache HTTP Server, IIS, JavaEE Server, Serverless(JavaScript) module (Agent).
* The feature available for Enterprise Edition.
Edition・Download
iPLAss Opensource Edition |
iPLAss Enterprise Edition |
|
License | AGPL v3 |
Proprietary |
Defining and Managing the Data metadata management, data management, automatic data management interface generation |
✓ |
✓ |
Advanced Data Management data audit logging, encryption etc. |
✓ |
|
Logic Customization customize the working logics, creating web API, document generation |
✓ |
✓ |
Security Mechanism basic authentication, authorization, OAuth/OpenID Connect etc. |
✓ |
✓ |
Advanced Security Mechanism SAML, 2-step verification, User Impersonation, LDAP supports etc. |
✓ |
|
Multi-Language Environment | ✓ |
✓ |
Notification Messages mail, SMS, push notification and the corresponding template management |
✓ |
✓ |
Multi-tenant system | ✓ |
✓ |
Data Aggregation Ad-Hoc Query, aggregation, simple BI functionality |
✓ |
|
Workflow | ✓ |
|
Job scheduler | ✓ |
|
Developing/Managing tools web console and batches for developer, Gradle Plugin etc. |
✓ |
✓ |
Web Account Manager & plugins Web Account Manager and its plugins |
✓ |
|
Support technical consultants by email, enhancement request, patch releases supplied during the license period, additonal information and so on |
✓ |
|
Support Policies
The current support for iPLAss covers the latest minor version (4.0.x) and the minor version prior to the latest (3.2.x).
The latest minor version is in the active state, where enhancements, feature additions, security updates, and bug fixes are provided.
The minor version prior to the latest is in the maintenance state, where only security updates and bug fixes are provided.
In iPLAss, versions are managed using three version numbers: Major, Minor, and Patch.
Major version
This version is upgraded when there is a considerable risk of compatibility issues due to the change of fundamental architecture.
While we take compatibility into maximum consideration, application modifications could be required when updating the iPLAss version.
We recommend a comprehensive retest of your entire application when you update the version of iPLAss.
Minor Version
This version is upgraded when there are significant feature additions.
While we generally ensure compatibility, minor application modifications may be required when updating the iPLAss version.
Patch version
This version is upgraded for bug fixes, enhancements to existing features, and small feature additions.
We generally ensure compatibility.
iPLAss Releases
Version | Status | Initial Release | End of Life (EOL) |
---|---|---|---|
4.0.x | Active *1 | 2024-10 | TBA |
3.2.x | Maintenance *2 | 2022-11 | TBA (after 2026-01) |
3.1.x | Archived | 2020-10 | 2024-09 |
*1 In patch versions, we provide enhancements, feature additions, security updates, and bug fixes.
*2 In patch versions, we provide only security updates and bug fixes.