Difference between revisions of "NexJ Express"

From CDOT Wiki
Jump to: navigation, search
(JSON Adapter)
m (Reverted edits by Chris Tyler (talk) to last revision by Andrew)
 
(81 intermediate revisions by 15 users not shown)
Line 1: Line 1:
=Introduction=
+
{{Admon/obsolete}}
NexJ Express Server is a [http://java.sun.com/javaee/ Java EE-based] server software which provides cost effective services for deploying highly-scalable, fault tolerant, distributed enterprise solutions. It encapsulates the key aspects of the [http://www.nexj.com/application_framework.aspx NexJ Application Framework] and enables the advanced business logic, multiple database connectivity, advanced workflow and rules, rich integration, and enhanced data security that are the hallmarks of all solutions that are configured using NexJ Express Studio.
 
  
=Contributors=
+
{{NexJ_Express Index}}
* Jordan Anastasiade
 
* Grace Batumbya
 
  
=Projects=
+
{|border="0" cellspacing="0" cellpadding="0" style="padding:0px; margin:0px;" |
== JSON Adapter ==
+
|-
=== Goal===
+
| colspan="3" valign="top" |
Add ability to access NexJ Server objects as JSON via a RESTful web service
+
{{Robelbox|theme=13|title=Introduction}}
<br/>'''current implementation'''
+
<div style="{{Robelbox/pad}}">
<blockquote><pre>
+
NexJ Model Server Express is an open source [http://java.sun.com/javaee/ Java EE-based] execution server specialized to enterprise integration applications. It provides services for deploying highly scalable, fault-tolerant, distributed enterprise solutions. NexJ Model Server Express provides:
<?xml version="1.0" encoding="utf-8"?>
 
<_Collection xmlns="http://www.nexj.com/xml" xmlns:xs="http://www.w3.org/2001/XMLSchema"  
 
              xmlns:xi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns="http://www.nexj.com/xml">
 
  <item xi:type="Person">
 
    <_version>0</_version>
 
    <_oid>104C083E8A4E8A4AD2BAF3011B6A393C97</_oid>
 
    <_keys>primaryTelcom</_keys>
 
    <_keys>primaryLanguage</_keys>
 
    <_keys>initials</_keys>
 
    <_values xi:nil="true"/>
 
    <_values xi:nil="true"/>
 
    <_values xi:nil="true"/>
 
    <lastName>Bar</lastName>
 
    <locking>0</locking>
 
    <firstName>Foo</firstName>
 
    <company>
 
      <_version>0</_version>
 
      <_oid>10209394A0D92641BC9E0FCF36DDAD1C23</_oid>
 
    </company>
 
  </item>
 
</_Collection>
 
</pre></blockquote>
 
'''JSON implementation'''
 
<blockquote><pre>
 
{
 
    "_Collection": {
 
        "item": {
 
            "_keys": ["primaryTelcom", "primaryLanguage", "initials"],
 
            "type": "Person",
 
            "locking": 0,
 
            "_oid": "104C083E8A4E8A4AD2BAF3011B6A393C97",
 
            "_version": 0,
 
            "_values": [
 
{"nil": true},
 
{"nil": true},
 
{"nil": true}
 
    ],
 
            "firstName": "Foo",
 
            "company": {
 
                "_oid": "10209394A0D92641BC9E0FCF36DDAD1C23",
 
                "_version": 0
 
            },
 
            "lastName": "Bar"
 
        },
 
    }
 
}
 
</pre></blockquote>
 
  
===Plan===
 
=== Phase 1: Design Proposal ===
 
* Get requirements from NexJ
 
* Incorporate requirements from NexJ into Design of JSON Adapater
 
* Proposal proposal for review, make changes as by NexJ until approved
 
  
====Phase 2: Coding ====
+
* Business Object Engine -  supports a single-inheritance class structure as well as aspects to provide specific application characteristics
* JSONMarshaller
+
* Workflow Engine - persistent, long-running asynchronous UML activities that are initiated by and act on business class instances
** Develop marshaller to transform NexJ Server Objects into JSON representation
+
* Persistence Engine - connect your model to multiple data sources (relational, XML file) in a database-independent way. Connect to multiple data sources at runtime leveraging different database adapters
 +
* Integration Engine - model message-based communication between the running model and other systems. The engine supports multiple protocols and message formats
 +
* Security Engine - design a privilege-based security model and apply it throughout the other model layers
  
* JSONUnmarshaller
 
** Develop an marshaller to transform JSON representation into NexJ Server Objects
 
  
* JSON Server
 
** Develop a JSON Server to expose NexJ Server objects in JSON
 
  
* Demo application that interacts with the Server using JSON
+
NexJ's approach to model-driven engineering (MDE), support by the model-execution capabilities of NexJ Model Server Express, greatly simplifies the process of developing enterprise applications.  Using NexJ Express Studio, developers focus on solving the business problems while the NexJ Framework handles technical complexities of running that solution.
** Read Server Objects
+
</div>
** Update Server Objects
+
<div style="border-top:1px solid #8488DC; border-bottom:1px solid #8488DC;  background-color:#CED1FA; padding:0.2em 0.9em 0.2em 0.5em; font-size:110%;">Industry Partnership
** Create Server objects
+
</div>
 +
<div style="height:10px"> </div><!--spacer-->
 +
<div style="{{Robelbox/pad}}">
 +
[[Image:Nexj-logo.jpg|right|122px]][http://cdot.senecac.on.ca Seneca CDOT] in partnership with [http://www.nexj.com NexJ Systems] (a leading provider of enterprise private cloud software, delivering enterprise customer relationship management (CRM) solutions to the financial services, insurance, and healthcare industries) work to both add and enhance existing functionality to NexJ Express. NexJ Express is part of [http://www.openhealthtools.org Open Health Tools(OHT)] serving as the [http://tinyurl.com/oht-aip Application Intergration Platfrom(AIP)]
  
====Phase 3: Code Review 1 ====
+
</div>
* Send patch to NexJ for review
+
{{Robelbox/close}}
 +
<br/>
 +
|-
 +
| colspan="3" valign="top" |
 +
{{Robelbox | theme=12|title=Contributors}}
 +
<div style="{{Robelbox/pad}}">
 +
Faculty
 +
* [[User:JAnastasiade| Dr. Jordan Anastasiade]]
 +
* [[User:Pliu | Dr. Peter Liu]]
  
====Phase 4: Make Changes as per Code Review 1 ====
 
* Refactor JSONSever and TextServer to inherit from GenericCharacterStreamHTTPServer
 
* Optimize marshaling of nested Pair objects
 
* Rename variables and methods as per NexJ Developer's Guide
 
  
====Phase 5: Code Review 2 ====
 
* Send patch to NexJ for review
 
  
===Status===
+
== Current Research Assistants: Mobile Integration Team ==
Phase 1: done
 
Phase 2: done
 
Phase 3: done
 
Phase 4: done
 
Phase 5: On-going
 
  
===Links===
+
* [[User:Wei.song|Wei Song]]
'''JSON''' <br/>
+
* [[User:zmhassan|Zakeria Hassan]]
http://www.json.org <br/>
+
* [[Dylan Segna]]
 +
* [[Alek Minassian]]
  
===Current Tasks===
+
For details on the mobile integration project visit our wiki: http://zenit.senecac.on.ca/wiki/index.php/Mobile_Medical_Device_Integration
  
== RESTful Webservice ==
+
== Past Research Assistants ==
== PostgreSQL Adapter ==
 
  
= Resources=
+
* [[User:Cwdesautels | Carl Desautels]]
 +
* [[User | Edward Charles Elio Hanna ]]
 +
* [[User:Gbatumbya|Grace Batumbya]]
 +
* [[Minooz/Projects | Minoo Ziaei]]
 +
* [[User:AnastasiaS | Anastasia Semionova]]
 +
* [[Tung-NexJ-Page  | Tung Pui Cheung]]
 +
* [[User:Brianlim  | Brian Lim]]
 +
* [[User:Abhishekbh | Abhishek Bhatnagar]]
 +
 
 +
 
 +
</div>
 +
{{Robelbox/close}}
 +
<br/>
 +
|-
 +
| width=33% valign=top |
 +
{{Robelbox|theme=1|title=[[:Category:NexJ Current Projects|Current Projects]]}}
 +
<div style="{{Robelbox/pad}};height:300px; overflow:auto;">
 +
Below is a list of projects that CDOT is actively contributing to
 +
<categorytree mode=all hideroot=on>NexJ Current Projects</categorytree>
 +
</div>
 +
{{Robelbox/close}}
 +
| width=33% valign=top |
 +
{{Robelbox|theme=1|title=[[:Category:NexJ Past Projects|Completed Projects]]}}
 +
<div style="{{Robelbox/pad}};height:300px; overflow:auto;">
 +
Below is a list of projects that CDOT has successfully completed
 +
<categorytree mode=all hideroot=on>NexJ Past Projects</categorytree>
 +
</div>
 +
{{Robelbox/close}}
 +
|}
 +
 
 +
<!--
 +
= Human Resources=
 +
 
 +
December 10, 2010
 +
 
 +
[[Image:Grace-Peter-Minoo-Dec10-10.jpg| Grace, Peter, Minoo | 800px]]
 +
::Minoo, Peter, Grace (from left to right)
 +
 
 +
[[Image:Minoo-Jordan-Grace-Dec10-10.jpg| Grace, Peter, Minoo | 800px]]
 +
::Minoo, Jordan, Grace
 +
 
 +
-->

Latest revision as of 20:33, 23 April 2018

Important.png
This page may be obsolete.
It contains historical information.
Introduction

NexJ Model Server Express is an open source Java EE-based execution server specialized to enterprise integration applications. It provides services for deploying highly scalable, fault-tolerant, distributed enterprise solutions. NexJ Model Server Express provides:


  • Business Object Engine - supports a single-inheritance class structure as well as aspects to provide specific application characteristics
  • Workflow Engine - persistent, long-running asynchronous UML activities that are initiated by and act on business class instances
  • Persistence Engine - connect your model to multiple data sources (relational, XML file) in a database-independent way. Connect to multiple data sources at runtime leveraging different database adapters
  • Integration Engine - model message-based communication between the running model and other systems. The engine supports multiple protocols and message formats
  • Security Engine - design a privilege-based security model and apply it throughout the other model layers


NexJ's approach to model-driven engineering (MDE), support by the model-execution capabilities of NexJ Model Server Express, greatly simplifies the process of developing enterprise applications. Using NexJ Express Studio, developers focus on solving the business problems while the NexJ Framework handles technical complexities of running that solution.

Industry Partnership
Nexj-logo.jpg
Seneca CDOT in partnership with NexJ Systems (a leading provider of enterprise private cloud software, delivering enterprise customer relationship management (CRM) solutions to the financial services, insurance, and healthcare industries) work to both add and enhance existing functionality to NexJ Express. NexJ Express is part of Open Health Tools(OHT) serving as the Application Intergration Platfrom(AIP)


Contributors


Below is a list of projects that CDOT is actively contributing to <categorytree mode=all hideroot=on>NexJ Current Projects</categorytree>

Below is a list of projects that CDOT has successfully completed <categorytree mode=all hideroot=on>NexJ Past Projects</categorytree>