Domino 10とアプリケーション開発
2月28日にIBMとHCLがホストするDomino 10に関する初のWebCast “Let’s Get Real: What’s in Domino v10.”が開催され、多くのIBM Notes/Domino Version 10 についての発表がありました。
以下のURLからリプレイが参照可能になりました。
その中でも今回はアプリケーション開発にフォーカスしてみたいと思います。

JavaScript Node.js
大きなアナウンスの1つとしてnode.jsとLoopBack(Node.JS API framework)のサポートの話がありました。Domino 10ではフルスタック開発環境としてnode.jsでの開発が可能となります。これはnode.jsの機能の一部分だけがDominoに取り込まれるというような限定的な話ではなくnode.jsがDominoバイナリーディレクトリに追加されるということらしく、NodeJsエンジニアがnpmから好きなオープンソースライブラリを使って開発するような通常と変わらない開発がDominoでも出来るようになります。
これにより多くのNodeJSエンジニアがDominoをプラットフォームにした開発へ乗り出す機会になることを期待できます。
またセッション中にはnode.jsとLoopBackのデモがありました。デモでは重たいと不評であるEclipseベースのDomino Designerではなく、自分も愛用するMS VSCodeがエディターとして使われていました。そして実際の中身はnode.jsからNSFへLoopBackを使いアクセスし一覧参照や新規で文書作成するというようなことをデモしていました。
ちなみにデモをしたのはIBMからHCLへ転籍したJason Gary氏でした。彼は1年前のIBM Connect 2017ハッカソン会場で我々にIBM Connections PINKがオープンソースを使い開発していることを熱く語ってくれた人で、彼がHCLでDomino、Connectionsの開発に引き続き携わっているということを知れたのは朗報でした。
自分がNode.JSでノーツ開発が出来ると聞いたときに真っ先に思い浮かんだ疑問は、「ACLはどのように扱うのか?」「非表示式にロールやグループで判断している箇所はどのように実装するのか?」というものでした。
こういった疑問を払拭する説明は残念ながら今回ありませんでしたが、デモで表示していたNode.JSファイルの中で興味深い設計を見つけました!

acls, validations という名のプロパティがある!!
うーん、しかし想像を膨らませてみてもこのプロパティの存在意義がなんなのかよく分かりません(笑) やはり理想はJavaのnotes.jarのように全てオブジェクト(json)でnode.jsが参照出来ることなのかなと思っていたのですがLoopBackのデモを見るともしかすると全然違うアプローチでの実装になるのかもしれません。
XPages、Java開発は?
今回のWebCastではXPages、Java開発に関しては多くを触れられませんでした。しかし自分はDominoでのXPages開発やJava開発が古いものとして取り残されるという話ではないと考えています。
XPagesの部分更新(Partial Update)機能だけを取り上げてもXPagesが他の開発プラットフォームと比較してRAD環境であることを証明するに足りると感じますし、なによりNotesフォームの表示、非表示式などとの親和性が高いのが魅力的です。
また、たまにXPagesで重たいアプリケーションになってしまっているケースを見ることがありますが、これはJSFのライフサイクルを理解せずに開発を行ってしまっていることが主な原因であることが多く、SSJSよりJava(w/ Managed Bean)での開発を積極的に取り入れることで必然的に無駄のない開発を行えるようになったりします。
OAuthベースの連携
これはスライドでサラッと振れられていただけでその中身までは説明はなかったですが、DominoログインがOAuthによって出来るようになるというような話であれば今後Dominoでのモバイルアプリ開発やクラウドアプリ開発で大いに活躍しそうです。この点は自分の完全な希望的観測です。
E-Search
Elastic Searchの説明が少しだけありました。今回、全文検索に関して「Full text auto-update on search and resilience」という機能強化が盛り込まれるという話がありましたが、Elastic Searchというものはおそらく現在のDomino全文検索とは別物で複数のDBにまたがった横断検索が出来る可能性を秘めているようです。興味がある方はElastic Searchで検索をしてみてください。
IBM THINK 2018
その他、様々な機能の説明がありましたが、自分が気になる機能の一部をブログにしてみました。興味がある方は是非ブログ最上部のリンクから動画をみてみてください。さらに深堀できるように3月20日から行われるIBM THINKでさらに情報収集をしてこようと思います。
2018 IBM Championに任命されました
2018年1月12日にIBMよりメールが届き、自分が2018 IBM Championに任命されたことを知りました。
今年でIBM Championとなるのはこれで4年連続となりました。IBMさん、皆様ありがとうございます。
なお、日本から選出されたIBM Champions for ICSは以下の6名となっております。
チームスタジオジャパン 株式会社 加藤 満 氏
https://notesdominoliaison.blogspot.jp/
株式会社 エフ 御代 政彦 氏
http://guylocke.blogspot.jp/
株式会社 ソルクシーズ 吉田 武司 氏
https://www.ibm.com/developerworks/community/blogs/YoshidaTakeshi
株式会社 ライブネス 小野 誠 氏
http://ameblo.jp/mak1005/
廣瀬化学薬品 株式会社 萩原 健補 氏
http://www.tanuchi.com/
株式会社 ケートリック 田付 和慶
おめでとうございます! (所属会社は任命時のものとなっています)
自分は2017年、IBM Championとして3年目の年を過ごしましたが、自分がIBMチャンピオンとして自分に課している使命、というと大げさですが力を入れているところに「日本発の情報を世界に発信すること」という思いがあります。
振り返ると、やはりサンフランシスコで行われたIBM Connect 2017ハッカソンにおいて日本チームが他の強豪チームを抑えて堂々の2位になれたことが一番うれしい出来事でした。
2017年はDomino 10の発表やDAC(Domino Applications on Cloud)の発表などがあり、2018年はまさにNotes/Dominoの節目の年になるのだと思っています。つい先日9.0.1 FP10がリリースされましたが「Docker support for IBM Domino」という機能が早速盛り込まれています。そしてDomino WEBアプリケーション開発の新たな開発言語としてnode.jsを扱えるようになるというウワサもちらほら。
Domino 2015 JAMで世界各国から寄せられたDominoへの新しいアイデアが製品に組み込まれるようになっていくのも、想像するだけでも本当に楽しみです。
4年目、引き続き”てくてくLotus”や”ノーツコンソーシアム”などをはじめコミュニティーへ貢献していきたいです。 自分はやはりいちNotes/Domino開発者としてコミュニティへ貢献することが一番しっくりくるので今後もICSでの開発者の後押しを出来るような活動を出来たらと思っています。
以上、4年目もどうぞよろしくお願い致します!
2017/11/15ノーツコンソーシアム オープンセミナー2017 弊社セッションのご紹介
「S21 XPages開発でここまで出来る!モダンアプリの開発事例一挙見せ」
ノーツコンソーシアム様主催による「ノーツコンソーシアムオープンセミナー2017」が、2017年11月15日(水)に東京 IBM箱崎本社にて開催されます。
弊社からは「S21 XPages開発でここまで出来る!モダンアプリの開発事例一挙見せ」と題して弊社がこれまで培ってきたXPAGES開発のノウハウを事例を交えてご紹介してまいります。
また当日は弊社セッション以外にXAPGESDAYから【H13 『XPages DAY』XPages のさらなる効果的な活用方法について】 というセッションを開催しています。
こちらではアイディアを出し合いながら議論をする Ideathon (アイディアソン)を行います。目からうろこな IBM Notes/Domino の活用方法に出会えるかもしれません。こちらも是非ご参加ください。
ご興味があるかたは是非ご参加ください。
イベント参加はこちらのリンク下の「お申込みリンク」から行ってください。
【弊社セッション】
S21 XPages開発でここまで出来る!モダンアプリの開発事例一挙見せ
11/15 10:00 - 10:45
本当は見せたくないかも、XPages開発に特化したケートリックが高度な開発ノウハウを
一挙に公開します。スライド公開無しで挑む当日限りの一本勝負
ケートリック株式会社
代表取締役
田付 和慶 氏
【 開催概要について 】
日時:2017年11月15日(水)10:00 – 17:00
場所:日本アイ・ビー・エム株式会社 本社事業所
【詳細・お申込みについて】
Notes/Domino Day 2017 最新情報
2017年9月19日(火)、御茶ノ水ソラシティカンファレンスセンターでIBMによるイベント「Notes/Domino Day 2017」が開催されましたので参加してきました。
IBM主催のイベントでNotes/Dominoの名前が入るのは何時ぶりなんでしょう? かの米国開催のイベント「Lotusphere」の名前を聞くような、そのタイトルだけでも心にぐっと来てしまう、今回はIBMの心意気を感じて仕方ありませんでした。日本IBMさん、グッジョブです!
そして、その基調講演ではプロダクト&デザイン, IBM Collaboration SolutionsのバイスプレジデントであるEd Brill氏が日本まで講演にやってきてくれました。

今回はこのイベントにふさわしい新たな新サービスの発表がIBMからありましたので最新情報と題してブログにしてみたいと思います。
IBM Domino Application on Cloud(DAC)
個人的には今回のイベントでの大きな発表の1つは「IBM Domino Application on Cloud」だと考えています。
「IBM Domino Application on Cloud(以下、DAC)」と言う名の通り、この新たなサービスではユーザーのNotesカスタムアプリ(NSF)をIBMが用意するクラウド環境Dominoで稼働させることができるようになります。
2017年10月にサービス開始なのでもうすぐですね!
実はIBMは3年ほど前からIBM Domino Applicationをクラウドで稼働できる環境を用意するという発表をしており、それに対して「XPages on Bluemix」こそがIBMが用意した回答であると自分は勝手に考えていたのですが嬉しい意味で裏切られました。
今回の発表で、ユーザーはより簡単に既存ノーツアプリをクラウドで稼働させることが出来るようになるはずです。そして煩わしいオンプレミスDominoの保守・運用、それにかかる経費の削減に寄与する強力な選択肢の一つになるはずだと期待できます。(XPages on Bluemixは運用都合上オンプレミスDominoからの脱却にはならないですからね)
「IBM Domino Application on Cloud」に関して発表された内容で覚えているものを箇条書きにしてみました。
- 自社のCertIDを使って環境を構築
- 既存のノーツアプリやカスタムテンプレートを用いたノーツアプリを作成することが可能
- ノーツクライアント、ICAA,WEBからの利用が可能
- 保存データの暗号化
- メール配信やエージェント実行が可能
- オンプレミス⇔クラウド間でDominoアプリを複製が可能
- サーバーはユーザー側で触れるようにはならない(アプリはユーザー側で管理者権限を持たせて運用)
- DominoサーバーアップグレードはIBMにより実施
- データベースサイズは25GBまで
- Dominoクラスタリグはオプション
- DAOS有効化はオプション
- Domino Access Serviceはオプション
技術的な話をすると、このDACですがDockerの技術を使って構築されているとのことです。(コンテナーにデプロイされたDominoサーバーがアプリケーションをホスト) このDominoのDocker機能はDomino as a Service(DaaS) として今後もしかするとユーザー側で構築が可能になるかもしれないですね。

またデータセンターは2017年10月の初期段階からIBMの東京データセンターで稼働するというのも見逃せません。
Tier 1 ロケーションとしてまず、US(アメリカ)、AP(日本)、EU(ドイツ・オランダ)が提供され、Tier 2ロケーションとしてオーストラリア、インド、中国と順次拡大していくようです。
DACのライセンスについて
DACのライセンス形態について発表があった内容ですが正直これらの内容は今後も色々と変更や追加が起きそうな予感。
- DB毎月額課金
- 1年以上の契約
- BYOL(Bring Your Own License)モデル (Enterprise ServerやUtility ServerなどSS&S ライセンスが別途必要)
- 最低10DBより利用が可能
まとめ
今回突如発表されたIBM Domino Application on Cloud」ですが、既にクラウドで利用可能なメール、カレンダーソリューションのVerseに加わりDominoのクラウドを加速させるための環境が整いつつあると感じさせます。 またXPages on Bluemixという選択肢もDACと組み合わせることで外部システム連携などアプリケーションの進化への可能性を広げることになるのではないかと期待してしまいます。
Notes/Dominoの競合製品で完全クラウドソリューションを売りにし、「まだオンプレミスでしか動かないNotes/Dominoアプリ」と言わせる機会を与えてしまっているとしたら、今後対等以上に渡り合っていけるようになったのではないかと思います。結果、XPages開発に対しても今よりスポットライトが当たることになると自分としてはさらにうれしいです(笑)
カスタムコントロール プロパティ定義にNotesDocumentを渡す方法
XPages開発でカスタムコントロールによる設計の分離を行う際、StringやBoolean意外にもNotesDocumentなどのデータソースをプロパティ定義する方法をご紹介します。
カスタムコント,ロールにデータソースを渡したい場面
そもそも、XPage本体でデータソースを定義していればNotesXSPDocument(デフォルトでは"document1"としてアクセス可)はカスタムコントロール側でも同様の方法でアクセスが可能になっています。
document1.getDocument() としてやればNotesDocumentへもアクセスが可能です。
ではNotesDocumentをカスタムコントロールに渡す必要があるシチュエーションというのはどのような場面でしょうか?
一番想定されるケースとして、ビューやRepeatコントロール内で各文書データを出力(もしくは編集)させるカスタムコントロールの作成です。
こちらにデモ用のサンプルを作ってみました。
サンプルURL: http://minato.ktrick.com/demo.nsf/ccWithNdocProperty.xsp
サンプルではテーブル内で文書がある分だけRepeatコントロールで行出力します。各文書の詳細情報として各行の下の緑のエリアがカスタムコントロールで実装している箇所です。
カスタムコントロールでデータソースをプロパティ定義
以下のようにしてカスタムコントロールでデータソースをプロパティ定義してやります。
- カスタムコントロールを作成
- 「Property Definition(プロパティ定義)」から「New Property(新しいプロパティ)」をクリック
- 「Name(名前)」に任意の名前をつけます
- 「Type(タイプ)」から右のアイコンをクリック
- 「Data Source(データソース)」から「Domino Document(Domino文書)」を選択

- 「Editor(エディター)」から右のアイコンをクリックし「Deta」⇒「Data Source Picker」を選択します。

以上でカスタムコントロールでデータソース定義は完了です。 ここで重要になるのは「Editor(エディター)」の部分で「Data Source Picker」を選択してやることです。
サンプルXPAGEの解説
サンプルXPageのコードからカスタムコントロールで定義したデータソースの呼び出し方、使い方をみていきます。
まずは呼び出し元になるXPageのソースコードです。
[xml highlight="29,30"]
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core"
xmlns:xc="http://www.ibm.com/xsp/custom">
<xp:this.data>
<xp:dominoView var="view1" viewName="AllContacts" />
</xp:this.data>
<xp:div style="margin:20px;">
<xp:table style="width:50%;">
<xp:tr>
<th>ID</th>
<th>First name</th>
<th>Last name</th>
</xp:tr>
<xp:repeat id="repeat1" rows="30" value="#{view1}" var="entry">
<xp:tr>
<xp:td>
<xp:text escape="true" id="computedField1" value="#{entry.Id}"></xp:text>
</xp:td>
<xp:td>
<xp:text escape="true" id="computedField2" value="#{entry.FirstName}"></xp:text>
</xp:td>
<xp:td>
<xp:text escape="true" id="computedField3" value="#{entry.LastName}"></xp:text>
</xp:td>
</xp:tr>
<xp:tr>
<xp:td colspan="3">
<xc:ccNdocProperty ndoc="#{javascript:entry.getDocument()}">
</xc:ccNdocProperty>
</xp:td>
</xp:tr>
</xp:repeat>
</xp:table>
</xp:div>
</xp:view>
[/xml]
29行目でカスタムコントロールを呼び出しています。先ほど作ったndocのプロパティにRepeatコントロールでループさせている各行の文書を設定しています。
以下はカスタムコントロールのソースコードです。
[xml highlight="4,6,9"]
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:panel style="border:5px dotted #00efef; background-color:#00dfdf; margin-left:20px; margin-bottom:20px;">
State: <xp:text escape="true" id="computedField3" value="#{compositeData.ndoc.state}"></xp:text>
<br />
City: <xp:text escape="true" id="computedField1" value="#{compositeData.ndoc.city}"></xp:text>
<br />
Email:
<xp:text escape="true" id="computedField2">
<xp:this.value><![CDATA[#{javascript:compositeData.ndoc.getItemValueString("email")}]]></xp:this.value>
</xp:text>
</xp:panel>
</xp:view>
[/xml]
4行目、6行目のようにcompositeData.ndoc.city と記述してデータソースバインディングしてやることもできますし、9行目のようにcompositeData.ndoc.getItemValueString("email") とSSJSで記述する方法も可能です。 処理速度としてはcompositeData.ndoc.xxx のデータバインディングの方が早いはずです。
サンプルXPAGEの解説
特に高度なテクニックを使っているわけではなくXPagesが持つ標準の機能の説明になりますが、意外とこのような利用方法ができることを書かれていたブログがなかったため書いてみました。 サンプルのようなシチュエーションで今回の方法を知らなければ、文書UNIDなどを渡してカスタムコントロール側で再度NotesDocumentを取得しなおす、といった回りくどい実装をしている場合もあるかもしれません。サーバー負荷、処理速度を考えてもこのように実装したほうがスマートなケースになりますので覚えておいてもらえればと思います。
カスタムコントロール内でDocumentデータソースのフィールドを動的に定義する方法
カスタムコントロールをより汎用的なパーツ化したい
共通パーツ化の目的でカスタムコントロールを作成することが多いと思います。
今回のブログは、カスタムコントロール内で文書フィールドをハードコードせず、カスタムコントロールを呼び出し側のXPAGEがプロパティ定義でフィールド指定してやる方法です。
この方法を使うと、カスタムコントロール内で複雑なロジックを持ったフィールド、例えば
- 社内Emailアドレスのみを許可する入力チェックを行うフィールドの汎用化
- リピートコントロール内で動的にフィールドを定義してスコープ変数に格納する
といった方法が可能になります。
自分の場合はリッチテキストフィールドに対して常に素のJSONデータのみを格納するように振る舞うフィールド定義をしたいケースがあり実装した経緯がありました。その際、作成したカスタムコントロールは呼び出し側が指定したフィールド名に対して動的にデータバインドを行うようになるのが今回の主旨です、その名もダイナミック データバインディング!(勝手に呼んでますw)
毎度のごとく、トピックがニッチなので(笑)百聞は一見に如かず、カスタムコントロールのコードを見てみます。
まず、カスタムコントロールの前準備として今回の例では「fieldName (String値)」というプロパティ定義をしています。

以下がサンプルコードです。
[xml highlight="5"]
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:inputText id="customEmailFld"
value="${javascript:'#{document1.' + compositeData.fieldName + '}';}">
<xp:this.validators>
<xp:validateConstraint
message="Emailが無効です。 Emailは'****@ktrick.***'の形式でなければいけません。">
<xp:this.regex><![CDATA[^[A-Za-z0-9._%-]*@ktrick.[A-Za-z]{2,4}]]></xp:this.regex>
</xp:validateConstraint>
</xp:this.validators>
</xp:inputText>
</xp:view>
[/xml]
重要な点はハイライトされている5行目に尽きます。
valueの値に対して、"${javascript:'#{document1.' + compositeData.fieldName + '}';}" と複雑な記述になっています。
まず着目してほしいのが、'#{document1.' + compositeData.fieldName + '}'の部分は文字列生成をしているということです。
もし直接データバインドをした場合、value="#{document1.Email}" となるところをあえてSSJS経由で渡してやることでこのように動的に記述することを可能にしています。
最後にこちらが呼び出し元のXPageです。
[xml highlight="4,5"]
<!--
<xp:inputText value="#{document1.Email}" id="email1"></xp:inputText>
-->
<xc:ccDynamicDataSource fieldName="Email">
</xc:ccDynamicDataSource>
[/xml]
鋭い人は「document1」がハードコードでは?と気づいたと思います。
前述のとおり'#{document1.' + compositeData.fieldName + '}'の部分は文字列を生成しているだけなのでfieldNameプロパティに「document1.Email」を指定し、'#{' + compositeData.fieldName + '}' としても動作します。
種明かしをするとなんだ~、と以外と簡単なのですが場合によってとても重宝する記述方法なので覚えておいてもらえればと思います。
参考
http://stackoverflow.com/questions/9913331/dynamic-data-binding
【2017/4/21 (金) 】テクテクLotusセッション:Aveedoのご紹介 - IBM Notes/Domino Modernization の実現を支援する海外ソリューション
Aveedo - IBM Notes/Domino Modernization の実現を支援する海外ソリューションのご紹介

既存NSFアプリをウィザード操作でカンタンWEB化できるソリューション「Aveedo」の開発元であるWe4ITからはCEO Stefan Sucker 氏 が直接、製品紹介をデモを交えて発表してくれます。(通訳は弊社から田付が担当します)
当日のアジェンダは以下のようになっています。
- 6:00PM – 6:25PM: Panagenda – ApplicationInsights
- 6:25PM – 6:50PM: Sapho
- 6:50PM – 7:00PM: <休憩>
- 7:00PM – 7:25PM: We4IT – Aveedo
- 7:25PM – 7:50PM: Darwino
- 7:50PM – 8:00PM: Q&A
IBM Connectons PINKとDominoの未来
2017年2月21日から23日まで開催されたIBM Connect 2017が終わり日本に帰国しました。
これから何回かに分けてIBM Connect 2017のフィードバックブログを書いていきたいと思います。
IBM Connections PINK
IBM Connect 2017基調講演で初めてIBM Connections PINKの存在が発表されました。
また20日に行われたIBM Connect 2017 HackathonのイントロダクションとしてIBMのJason Roy Gary氏によるIBM Connections PINKのテクノロジーに関しての説明がありました。
それによるとIBM Connections PINKは今までのIBM Connectionsと全く違うテクノロジー、哲学をもって再構築されており、従来のIBM Connectionsと全く異なる設計を持つことになります。
具体的なところでは、
・マイクロサービスベースのアーキテクチャ
・ad-hoc利用するアプリ連携をサポ―ト
・JSONベースのモダンAPI
・graphQL
・Modern CI-CD
・StrongLoop / IBM API Connect (node.js/express)
・SWIFT / GO
・React.js
・MongoDB
・Redis
・Nginx
・Docker
というテクノロジーやコンセプトに基づいて開発されています。
上記にあるようにデータベースはSQLですらなくなりMongoDBを利用するようです。
また、Jason Roy Gary氏がIBM Connect 2017の最終日のセッション「Ask to the developer」で解答していた際のある言葉が印象的でした。
「IBM Connections PINKでは我々はソフトウェアをあなた達のために作るのをやめました。あなた達と作るのです」
様々なセッションを通じ、彼のあの言葉の裏付けとなっているテクノロジーがgraphQLであり、Dockerであり、LiveGridでありMicroserviceであることを今回学ぶことが出来ました。
正直なところ、Docker、MicroserviceやLiveGridなどの正確な内容を把握できておらずまだまだ勉強が必要なのですが、今後IBMからこれらのテクノロジーに関しての多くの情報が発信されていくのだろうと期待しています。
Dominoはどうなるの?
マイクロサービスで様々なアプリがつながるようになりまさに「あなた達と作る」環境が整備されていくなか、これらのテクノロジーにDominoは取り残されていくのでしょうか?
自分がIBM Connect 2017に参加してイメージしたDominoでは、Dominoもマイクロサービスの一つとなり様々なサービスと疎結合していく未来の姿です。
そのためにOpenNTFで現在進められているプロジェクトにSmartNSFというものがあります。

こちらのプロジェクトはOpenNTFのチェアマンであるChristian Gudemann氏によって進められていますが、このSmartNSFを使うことによって簡単にDominoのデータをMicroservice化して活用することが出来ることを目指しています。
OpenNTFといえばオープンソースだから容易に手を出しにくいと考えがちですが、いままでのOpenNTFの活動から考えて、SmartNTFの方向性はよっぽど間違わない限りゆくゆくはDominoのFeature Packに取り込まれていくのだろうと考えています。実際はまだスタートしたばかりのプロジェクトなのでこの考えは時期尚早かもしれませんがDominoの未来を語る上で今一番期待してもいいのではないかと思います。
XPagesDay 2016 本日開催! 弊社セッションは16時から
XPagesDay 2016 本日開催!
今日からXPagesDayの熱い2日間が幕を開けます!
XPagesDayとはXPages技術に関するテクニカルWEBセミナーであり、もちろん参加費無料です。
今年2016 年はXpagesDay2016と題して、11 月 21 日(月)、22 日(火)の二日間を計7セッションの濃い内容でお送りします。
セッション名「XPagesでJava開発するぞ!」
毎年ケートリックからも1セッション講師を務めさせて頂いておりますが、今年は私、田付とエンジニアの米原の2人で「XPagesでJava開発するぞ!」というタイトルでお送りいたします。今年は今までの弊社セッションの中でも一番ハイレベルな内容となりそうです。
おそらく、「Javaは難しそう」、「XPagesが学びたいのであってJavaには興味がない」、という方々も沢山おられると思います。
ただXPagesはJavaによって動いています。 IBMがXPagesの解説をする際に「JSFを基礎技術とした開発言語です」という話をしていたことを覚えている人もいると思います。
JSFとはJavaでWEBアプリケーション開発をする際のとっても強力な開発フレームワークであり多くのJavaエンジニアがJavaEE JSFをベースに開発を行っています。
そんなXPagesのルーツを知ること、基礎技術を知ることはXPagesへの理解を深めることに繋がります。
そんな思いで今回のセッションを行いますので、少しでも興味がある方は是非参加してみてください。
【イベント、セッション概要について 】
セッション: XPagesでJava開発するぞ!(A-03)
日時:2016年11月21日(月) 16:00 – 16:45
場所:オンライン ウェビナー
【詳細・お申込みについて】
お申込み: 無料
イベントページ: http://xpagesday.com/
【2016/11/9 NCオープンセミナー】 既存ノーツアプリのWEB化でハマらないためのノウハウをご紹介します
いよいよ「ノーツコンソーシアム オープンセミナー」の開催が近づいてまいりました。
弊社からは
「開発者必見!ノーツアプリを効率的にWEB化するツールをご紹介!」
と題して講演をさせて頂きます。
開発者だけでなくノーツアプリのWEB化をすすめるご担当者に是非知って頂きたいWEB化のための解析、分析ツールをデモを交えてご紹介する予定です。
具体的には、以下のツールのご紹介を考えております。
- Teamstudio Analyzerの監査機能
XPAGES化の際のハマりどころを事前に洗い出す方法としてTeamstudio社の製品であるAnalyzerの監査機能を使った手法をご紹介。 - Teamstudio Usage Auditor
「そもそもこのNSFはWEB化が必要なほど使われているのか?」を利用頻度などの情報から事前に調べることが可能なツールのご紹介。 こちらもTeamstudio社の製品になります。
- Teamstuio Adviser
Teamstudio社から今年発表される製品をどこよりも早くご紹介。WEB化のための見積もり算出に使えるツールです。 - We4IT ScanAlyzr
We4IT社の製品であるWEB化見積もりツールのご紹介。 XPAGESによる開発工数の自動算出だけでなく、ノーツWEBアプリ作成ツール「Aveedo」でWEB化マイグレーションした際の開発工数の自動算出も行うツールになります。 - We4IT Aveedo
既存ノーツアプリをDominoデザイナー要らずでWEB化してしまうツールのご紹介です。お時間がゆるせば実際にサンプルのNSFアプリをAveedoを使い自動WEB化する手順をデモでお見せいたします。
さらに、様々なお客様のご依頼を頂き、NSFアプリのXPAGES化を行っている弊社だからこそお伝えすることができるノウハウを交えてご紹介する内容の濃いセッションになっております。
弊社が販売代理店契約をもつWe4IT社の製品だけではなくTeamstudio社の製品のご紹介など、参加者の方々へのメリットを優先でご紹介するセッションとなっているのも面白い試みだと思いますので是非ご参加ください!
イベント参加のご登録がまだの方は是非こちらのリンク下の「お申込みリンク」からご登録を行うことが出来ます。(参加費無料)
【 開催概要について 】
弊社セッション: <S13> 開発者必見!ノーツアプリを効率的にWEB化するツールをご紹介!
日時:2016年11月9日(水) 13:00 – 13:45
場所:日本アイ・ビー・エム株式会社 本社事業所
セッション情報:S13 -開発者必見!ノーツアプリを効率的にWEB化するツールをご紹介!
【詳細・お申込みについて】
イベントページ: http://www.notescons.gr.jp/home.nsf/content.xsp?k=ncopen16&w=12














