New Features
SOA Integration through Data Services
"Integrate with enterprise data"
Platform 4.5 pushes the data framework another step forward with the integration of data services that allow declarative connection to enterprise data. Users can, using XML, configure simple and complex requests for web services and databases as well as custom data services.
Features
- Fully declarative with additional APIs where appropriate
- Web Services support
- SOAP
- REST
- SQL Data connection via JDBC
- Programmable pre-processors and post-processors
- Support for WSDL auto generating parameter types
- Interface for extension (custom data service)
...
Important Notes
- Use retrieveAndProcessAsynchronously to dispatch requests; these will be handled per the application server's threading model. Response will come back to the client asynchronously.
...
"Validate user input without code"
...
- Declarative validation of user input
- Support for custom validators
- Support for validation chains where multiple validators are used
...
概要
本リリースでは、次の事項が導入されました。
- Nexaweb アプリケーションのビルドとデプロイに、Ajax がクライアント技術としてサポートされるようになりました。
- データベースとWeb サービスをサポートする、サーバー上のデータサービスが導入されました。
新しい機能
Ajax
Platform 4.5 に導入された事項は次のとおりです。
- Ajax クライアントのサポート インターフェイスに最適なシンタックスとしてNXML からXAL に移行
- ユーザー
シンタックスの主要な変更点は次のとおりです。
- 全体に新しいスキーマを採用
- 属性の名前と値をCSS/HTML スタイル名に移行
- 属性の名前と値をCSS/HTML スタイル名に移行
- ルートタグおよび名前空間にXAL を採用
Java アプリケーションの新規バージョンでは、NXML が完全にサポートされます。
データサービスを介したSOA との統合
"エンタープライズデータとの統合"
Platform 4.5は、エンタープライズデータとの宣言型接続を可能にするデータサービスを統合して、データフレームワークをさらに一歩前進させました。ユーザーは、 XML を使用して、カスタムデータサービスだけでなく、Web サービスやデータベースに対するリクエストを単純なものでも複雑なものでも構成できます。
機能
- 必要に応じてAPI を追加することにより完全に宣言的に設定可能
- Web サービスのサポート
- SOAP
- REST
- JDBC を介したSQL データ接続
- プログラム可能なプリプロセッサおよびポストプロセッサ
- WSDL 自動生成パラメータ型のサポート
- 拡張のためのインターフェイス(カスタムデータサービス)
SOAP Web サービスリクエストに対して、Nexaweb では、リクエストデータ型を構成するために自動WSDL 検索を提供しています。データサービスは、ユーザーインターフェイスにバインドされるデータソースを投入することにより、既存のデータバインディング機能 と連動します。パラメータのコンフィギュレーションは完全にクライアントサイドで行うこともできるし、XML で、あるいは送信前にリクエストを変更するプリプロセッサを介してサーバー上で行うこともできます。また、エンタープライズデータサービスからのレスポン スデータを操作するために、ポストプロセッサをサーバー上に実装できます。
サーバー上のデータサービスのインターフェイスはオープンであり、フロー全体にフックされるカスタムデータサービスを作成するために実装できます。
重要事項
- retrieveAndProcessAsynchronously を使用してリクエストを送信します。これらはアプリケーションサーバーのスレッドモデル単位で処理されます。レスポンスは非同期でクライアントに返されます。
詳細については、データサービスのドキュメントを参照してください。
データ検証
"コードの記述を必要としないユーザー入力の検証"
この検証フレームワークでは、ユーザー入力を検証するための動作を宣言的に定義できます。これには、ユーザーインターフェイスウィジェットを別の色 に変更する、ボタンを無効にする、およびダイアログボックスを表示する動作、および入力を修正するためのアクションが必要なことをユーザーに知らせるため の動作が含まれます。
機能
- ユーザー入力の宣言的な検証
- カスタムバリデータのサポート
- 複数のバリデータが使用される検証チェーンのサポート
組み込みのバリデータ型
- requiredFieldValidator
- stringLengthValidator
- integerValidator
- decimalValidator
- rangeValidator
- dateValidator
- currencyValidator
See the documentation on data validation.
Headless Client Operation
"Dual mode deployment options; back-office integration"
Headless client functionality allows the Java client to run with the user interface disabled. This allows dual mode deployment: some users interacting with a Nexaweb user interface, and some deployments simply communicating with back office operations such as databases, providing a web service feed, etc.
Features
...
詳細については、データ検証のドキュメントを参照してください。
ヘッドレスのクライアント操作
"デュアルモードのデプロイメントオプション、バックオフィスの統合"
ヘッドレスクライアント機能を使用すると、Java クライアントをユーザーインターフェイスを無効にした状態で実行できます。これにより、デュアルモードのデプロイメントが可能になります。たとえば、一方 でユーザーがNexaweb ユーザーインターフェイスでやり取りし、もう一方でデータベースなどのバックオフィス運用との通信や、Web サービスフィードの提供などを単純に実行するといったデプロイメントです。
機能
- この機能は、コマンドラインで"-headless true"
- All user interface elements have been disabled
- Enhanced logging has been added to provide the necessary flexibility required for a non user interface deployment
Important Notes
- No effort has been made to reduce the size of the client JAR in headless mode; the binary code that provides user interface functionality is still there, it has simply been disabled
- This functionality is not supported in the Applet client or the Auto Updating Desktop client
See the documentation on headless client.
New Logging Features
"Improve logging flexibility"
In conjunction with the headless client feature, new and more flexible logging functionality has been added; see getLogProvider in client session and LogFactory.getLog for details.
Features
- Syntax for configuring logs in nexaweb-client.xml is now uniform with the syntax in nexaweb-server.xml
- APIs have been extended to enable custom log consumer development
- Two default log consumers are now available for the client
- ConsoleLogConsumer - outputs log messages to the client console
- DialogLogConsumer - outputs error and exceptionmessages to a dialog box
Support for Drop Shadows
Drop shadows available for user interface elements; see the dropShadowOffset and dropShadowColor attributes in the XML UI documentation.
See the documentation for more.
Client Side XML Processing
"Improve UI responsiveness"
A new API has been added, "processXML", that enables developers to cache user interface XML on the client and process when needed. This allows an applications to have caching mechanisms tailored to the specific mechanics of that applications interface.
Important Notes
- This feature does not provide out of the box caching functionality, it is necessary to provide a caching mechanism in conjunction with this function.
See the documentation for more.
Updated Default Stylesheet
The default style sheet has been updated.
To access the previous style sheet, download from the Nexaweb compatibility repository.
Release Notes and Known Issues
Differences from Nexaweb Java Client
Move from NXML to XAL as the syntax of choice for the user interface; the primary changes include:
- New schema
- Migration of attribute names and values to CSS/HTML style names
- New layout panels replacing the current concept of panel + layout tag
- XAL as the root tag and namespace
- No more "://"; simply use ":" moving forward
- "px" is required for measure values
XAL Schema is different from NXML
- Three schemas have been created: Core, HTML, Java. The core schema has extension points for technology specific element and attribute support
- Layout managers have been removed, instead managed layout panes have been provided
- Differences in basic types: size specifications, color specifications; measure values now require a suffix to identify units, for Java this must be "px", for JavaScript it can be any HTML supported value such as px, %, em, pt; color specifications support more names in JavaScript, they also support both RGB and Hex notation.
- Bounding types (list of four things) are handled in HTML style; this means they are space separated in a 1 to 4 list system (in NXML it was either 1 or 4). This specifies all | top/bottom, left/right | top, left/right, bottom | top, right, bottom, left.
- Attributes have changed generally to be closer to HTML; for example fontColor becomes color, bgColor becomes backgroundColor, img becomes image
- Orientation components now have a horizontal and vertical component instead of a base component with an orientation attribute; for instanace slider becomes horizontalSlider and verticalSlider
- Window, Dialog, rootPane, desktopPane are now all defined to have one element which will take up there entire content area
- Chart and SVG are not part of the XAL language specification
Important user interface differences between Java and Ajax:
- The Java product builds the user interface by drawing to the screen. All user interface elements are drawn to the screen by the Nexaweb client using Java graphics package. Styling is completely native to Nexaweb and includes linearGradients, dropShadows etc.
- The Ajax product builds the user interface by composing HTML elements. Styling is performed and limited to CSS. Most effects are achieved with background images.
Features not supported in this version
Technology Limitations:
- linearGradient styles will not be supported. However, using images, most components will look the same.
- Charting and SVG are not supported. Some browsers support SVG, but support is not universal. There are examples of SVG engines done using HTML DIVs and absolute positioning, these are not efficient. A better approach to high quality graphics is to use Flash or other plugin technologies integrated into the Nexaweb application.
- Keyboard navigation (many limitations)
Features not supported in this version:
- NFC will not work with XAL; it will continue to work for NXML. This will be addressed in future releases
- Scrollbar as a separate component, this will likely be dropped permanently in both technologies; scrollPane is supported
- Slider
- cardPane
- Drag and Drop functionality (may have limited support in the release)
- Validation framework
- Tab order
- Keyboard navigation - later releases will have better support
Troubleshooting
...
- Are you sure the included XAL file is being loaded? There are FireFox plugins such as FireBUg that can tell you what files have been requested by your XAL application. Look for your included file.
- Is the XAL file you're including using valid XML?
- Is there only one rootNode in the included file? Make sure that the rootNode is NOT <Xal>. It should be a XAL pane or an element.
- Does the rootnode have a namespace? Most likely, the namespace would be xmlns="http://openxal.org/ui". Try putting that as an attribute-value pair in your rootNode.
- Does your included XAL show up in the generated source? Tools such as FireBug allow you to view the HTML source generated by your XAL application. If you can find your included content there, try giving your rootNode a backgroundColor, width, and height. You may see it show up.
Ajax Issues
Image Caching and IE 6
Dynamic user interface powered by Ajax uses images to enable much of the dynamic nature of the UI; this involves getting and setting images rapidly on the fly. IE 6 has a limitation with image cache - it does not check it for images, instead getting the image on the server. This is discussed here and various other places. The workaround is to configure the web server not to add an expires HTTP header.
...
XAL files are cached by the browser. This means that refreshing your application page will not get the latest copy of the XAL file that was edited. This can also be managed by the web server. Another way is to add the header to the page, possible if using server side script technology such as JSP or PHP. In PHP this can be done with: header ( 'cache-control: no-cache' );
...
IIS does not recognize files with a .xal file extension and does not send them by default. This can be worked around by setting a mime type for XAL text/xml; another workaround is to rename the files with a .xml extension. This behavior does not exist on any application servers or on Apache web server.
IE 6 Performance
There is a known issue with poor IE 6 performance. This is being resolved with progressive versions of the Nexaweb Platform, however Microsoft has also released a patch for it.
...
- を使用して有効にします。
- すべてのユーザーインターフェイス要素は無効になります。
- 非ユーザーインターフェイスデプロイメントに要求される十分な柔軟性を提供するために、拡張されたログが追加されました。
重要事項
- ヘッドレス/モードでは、クライアントJAR のサイズは削減されていません。ユーザーインターフェイス機能を提供するバイナリコードは、単に無効になっているだけで、引き続き存在しています。
- この機能は、アプレットクライアントとAuto Updating Desktop クライアントではサポートされていません。
© Copyright 2005-2009 Nexaweb Technologies Inc. One Van de Graaff Drive Burlington, MA 01803 | プライベートポリシー | お問合せ