JP4862094B2 - 端末装置、情報処理方法、情報処理プログラム、及び記録媒体 - Google Patents

端末装置、情報処理方法、情報処理プログラム、及び記録媒体 Download PDF

Info

Publication number
JP4862094B2
JP4862094B2 JP2010287172A JP2010287172A JP4862094B2 JP 4862094 B2 JP4862094 B2 JP 4862094B2 JP 2010287172 A JP2010287172 A JP 2010287172A JP 2010287172 A JP2010287172 A JP 2010287172A JP 4862094 B2 JP4862094 B2 JP 4862094B2
Authority
JP
Japan
Prior art keywords
image forming
screen
terminal device
forming apparatus
jsdk
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2010287172A
Other languages
English (en)
Other versions
JP2011120250A (ja
Inventor
光男 安藤
邦洋 秋吉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2010287172A priority Critical patent/JP4862094B2/ja
Publication of JP2011120250A publication Critical patent/JP2011120250A/ja
Application granted granted Critical
Publication of JP4862094B2 publication Critical patent/JP4862094B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、端末装置、情報処理方法、情報処理プログラム、及び記録媒体に関し、特に画像形成装置において機能するアプリケーションを該画像形成装置とネットワークを介して接続する情報処理装置に実行させる端末装置、情報処理方法、情報処理プログラム、及び記録媒体に関する。
近年、コピー機能とプリンタ機能とスキャナ機能とファクシミリ機能を備える複合機や融合機が市販されるようになった。複合機や融合機は、コピーやプリンタとして機能する場合には、画像を印刷用紙に印刷することになり、コピーやスキャナとして機能する場合には、画像を読取原稿から読み取ることになり、ファクシミリとして機能する場合には、画像を電話回線を介して他の機器と授受することになる。
複合機や融合機の画面上には、複合機や融合機の画面上で種々の操作を行うための種々の操作画面が表示される。具体例としては、複合機や融合機にコピー処理を実行させる旨の操作を行うための「コピー操作画面」等が挙げられる。複合機や融合機のクライアントPCの画面上には、複合機や融合機のクライアントPCの画面上で種々の操作を行うための種々の操作画面が表示される。具体例としては、複合機や融合機にプリント処理を実行させる旨の操作を行うための「プリント操作画面」等が挙げられる。
さて、複合機や融合機の画面上に「コピー操作画面」等の操作画面を表示すべく複合機や融合機で実行されるアプリケーションや、複合機や融合機のクライアントPCの画面上に「プリント操作画面」等の操作画面を表示すべく複合機や融合機のクライアントPCで実行されるアプリケーションが、種々の機器で実行できたり種々の機器を制御できたりと自由度の高いアプリケーションであれば、アプリケーションを共通化できたりして便利である。
本発明は、画像形成装置において実行されるアプリケーションの機能を他の装置において実現することのできる端末装置、情報処理方法、情報処理プログラム、及び記録媒体の提供を目的とする。
そこで上記課題を解決するため、本発明は、画像形成装置のエミュレータとして機能する端末装置であって、当該端末装置の画面上で操作を行うための操作画面を当該端末装置の画面上に表示する第一のアプリケーションを、当該端末装置内に起動させる起動手段を備えることを特徴とする。
本発明によれば、画像形成装置において実行されるアプリケーションの機能を他の装置において実現することのできる端末装置、情報処理方法、情報処理プログラム、及び記録媒体を提供することができる。
本発明の実施例に該当する融合機を表す。 図1の融合機に係るハードウェア構成図である。 図1の融合機に係る外観図である。 オペレーションパネルを表す。 図1の融合機が接続されているネットワークに係るネットワーク構成図である。 図1の融合機のWeb機能に係るソフトウェア構成図である。 図1の融合機に係るソフトウェア構成図である。 図1のJSDKアプリとJSDKプラットフォームのクラス図である。 JSDKシステムの起動手順について説明するための図である。 JSDKシステムのGUIについて説明するための図である。 起動操作画面の表示手順について説明するための図である。 起動処理の実行手順について説明するための図である。 インストール操作画面の表示手順について説明するための図である。 インストール処理の実行手順について説明するための図である。 JNLPファイルの構文の例を表す。 第1具体例に係るソフトウェア構成図である。 Trimming Appletに係るシーケンス図である。 Trimming Xletに係るシーケンス図である。 JSDK Emulatorについて説明するための図である。 第2具体例に係るソフトウェア構成図である。 第2具体例におけるインストール方式について説明するための図である。 Managing Appletに係るシーケンス図である。 Managing Xletに係るシーケンス図である。 本発明の実施例に該当するPCを表す。 PC内のJSDKアプリとJSDKプラットフォームのクラス図である。 融合機内で実行される遠隔操作の準備処理の実行手順について説明するための図である。
図1は、本発明の実施例に該当する融合機101を表す。図1の融合機101は、種々のハードウェア111と、種々のソフトウェア112と、融合機起動部113により構成される。
融合機101のハードウェア111としては、撮像部121と、印刷部122と、その他のハードウェア123が存在する。撮像部121は、読取原稿から画像(画像データ)を読み取るためのハードウェアである。印刷部122は、画像(画像データ)を印刷用紙に印刷するためのハードウェアである。
融合機101のソフトウェア112としては、種々のアプリケーション131と、種々のプラットフォーム132が存在する。これらのプログラムは、UNIX(登録商標)等のOS(オペレーティングシステム)によりプロセス単位で並列的に実行される。
アプリケーション131としては、コピー用のアプリケーションであるコピーアプリ141、プリンタ用のアプリケーションであるプリンタアプリ142、スキャナ用のアプリケーションであるスキャナアプリ143、ファクシミリ用のアプリケーションであるファクシミリアプリ144、ネットワークファイル用のアプリケーションであるネットワークファイルアプリ145、Webクライアント用のアプリケーションであるWebブラウザ181、Webクライアント用のアプリケーションであるJWS(Java(登録商標) Web Start)182が存在する。
アプリケーション131は、専用のSDK(ソフトウェア開発キット)を使用して開発することができる。SDKを使用して開発したアプリケーション131をSDKアプリと呼ぶ。専用のSDKとしては、C言語でアプリケーション131を開発するための「CSDK」や、Java(登録商標)言語でアプリケーション131を開発するための「JSDK」が提供される。CSDKを使用して開発したアプリケーション131を「CSDKアプリ」と呼び、JSDKを使用して開発したアプリケーション131を「JSDKアプリ」と呼ぶ。図1の融合機101にも、CSDKアプリ146と、JSDKアプリ147が存在する。図1の融合機101にはさらに、Java(登録商標)言語で記述されたJSDKアプリ147とC言語で記述された他のソフトウェア112との仲介を行うソフトウェア112として、JSDKプラットフォーム148が存在する。
プラットフォーム132としては、種々のコントロールサービス151、システムリソースマネージャ152、種々のハンドラ153が存在する。コントロールサービス151としては、ネットワークコントロールサービス(NCS)161、ファクシミリコントロールサービス(FCS)162、デリバリコントロールサービス(DCS)163、エンジンコントロールサービス(ECS)164、メモリコントロールサービス(MCS)165、オペレーションパネルコントロールサービス(OCS)166、サーティフィケーションコントロールサービス(CCS)167、ユーザディレクトリコントロールサービス(UCS)168、システムコントロールサービス(SCS)169が存在する。ハンドラ153としては、ファクシミリコントロールユニットハンドラ(FCUH)171、イメージメモリハンドラ(IMH)172が存在する。
NCS161のプロセスは、ネットワーク通信の仲介を行う。FCS162のプロセスは、ファクシミリのAPIを提供する。DCS163のプロセスは、蓄積文書の配信処理に関する制御を行う。ECS164のプロセスは、撮像部121や印刷部122に関する制御を行う。MCS165のプロセスは、メモリやハードディスクドライブに関する制御を行う。OCS166のプロセスは、オペレーションパネルに関する制御を行う。CCS167のプロセスは、認証処理や課金処理に関する制御を行う。UCS168のプロセスは、ユーザ情報の管理に関する制御を行う。SCS169のプロセスは、システムの管理に関する制御を行う。
アプリケーション131とプラットフォーム132の仲介を行うソフトウェア112として、仮想アプリケーションサービス(VAS)135が存在する。VAS135は、アプリケーション131をクライアントとするサーバプロセスとして動作すると共に、プラットフォーム132をサーバとするクライアントプロセスとして動作する。VAS135は、アプリケーション131から見てプラットフォーム132を隠蔽するラッピング機能を備え、プラットフォーム132のバージョンアップに伴うバージョン差を吸収する役割等を担う。
融合機起動部113は、融合機101の電源投入時に最初に実行される。これにより、UNIX(登録商標)等のOSが起動され、アプリケーション131やプラットフォーム132が起動される。これらのプログラムは、ハードディスクドライブやメモリカードに蓄積されており、ハードディスクドライブやメモリカードから再生されて、メモリに起動されることになる。
図2は、図1の融合機101に係るハードウェア構成図である。融合機101のハードウェア111としては、コントローラ201と、オペレーションパネル202と、ファクシミリコントロールユニット(FCU)203と、撮像部121と、印刷部122が存在する。
コントローラ201は、CPU211、ASIC212、NB221、SB222、MEM−P231、MEM−C232、HDD(ハードディスクドライブ)233、メモリカードスロット234、NIC(ネットワークインタフェースコントローラ)241、USBデバイス242、IEEE1394デバイス243、セントロニクスデバイス244により構成される。
CPU211は、種々の情報処理用のICである。ASIC212は、種々の画像処理用のICである。NB221は、コントローラ201のノースブリッジである。SB222は、コントローラ201のサウスブリッジである。MEM−P231は、融合機101のシステムメモリである。MEM−C232は、融合機101のローカルメモリである。HDD233は、融合機101のストレージである。メモリカードスロット234は、メモリカード235をセットするためのスロットである。NIC241は、MACアドレスによるネットワーク通信用のコントローラである。USBデバイス242は、USB規格の接続端子を提供するためのデバイスである。IEEE1394デバイス243は、IEEE1394規格の接続端子を提供するためのデバイスである。セントロニクスデバイス244は、セントロニクス仕様の接続端子を提供するためのデバイスである。
オペレーションパネル202は、オペレータが融合機101に入力を行うためのハードウェア(操作部)であると共に、オペレータが融合機101から出力を得るためのハードウェア(表示部)である。
図3は、図1の融合機101に係る外観図である。図3には、撮像部121の位置と、印刷部122の位置と、オペレーションパネル202の位置が図示されている。図3には更に、読取原稿のセット先となる原稿セット部301と、印刷用紙の給紙先となる給紙部302と、印刷用紙の排紙先となる排紙部303が図示されている。原稿セット部301は、撮像部121の構成要素である。給紙部302は、印刷部122の構成要素である。排紙部303は、印刷部122の構成要素である。
オペレーションパネル202は、図4のように、タッチパネル311と、テンキー312と、スタートボタン313と、リセットボタン314と、機能キー315と、初期設定ボタン316により構成される。タッチパネル311は、タッチ操作で入力を行うためのハードウェア(タッチ操作部)であると共に、画面表示で出力を得るためのハードウェア(画面表示部)である。テンキー312は、キー(ボタン)操作で数字入力を行うためのハードウェアである。スタートボタン313は、ボタン操作でスタート操作を行うためのハードウェアである。リセットボタン314は、ボタン操作でリセット操作を行うためのハードウェアである。機能キー315は、キー(ボタン)操作でCSDKアプリ146やJSDKアプリ147による操作画面を表示させるためのハードウェアである。初期設定ボタン316は、ボタン操作で初期設定画面を表示させるためのハードウェアである。
原稿セット部301は、ADF(自動原稿搬送装置)321と、フラットベッド322と、フラットベッドカバー323により構成される。給紙部302は、4個の給紙トレイにより構成される。排紙部303は、1個の排紙トレイにより構成される。ADF321には、複数枚の読取原稿を重ねてセットすることができる。フラットベッド322には、読取原稿を下向きにセットする。
(JSDK)
図1の融合機101は、自機を「Webクライアント」とする「Webサーバ」として機能すると共に、他機を「Webクライアント」とする「Webサーバ」として機能することになる。ここでは、Webサーバ側ではWebサーバ用のWebアプリケーションであるServletやJSP等のJava(登録商標)アプリケーションが実行されて、Webクライアント側ではWebクライアント用のWebアプリケーションであるAppletやXlet等のJava(登録商標)アプリケーションが実行されるものとする。そのため、Webサーバ側にはWebサーバソフトやJES(Java(登録商標) Embedded Server)がインストールされていて、Webクライアント側にはWebブラウザやJWS(Java(登録商標) Web Start)がインストールされているものとする。
図5は、図1の融合機101が接続されているネットワークに係るネットワーク構成図である。図1の融合機101は、融合機101A,B,C、プリンタ102A,B,C、PC(パーソナルコンピュータ)401等とネットワークで接続されている。図5のPC401は、PC本体411、キーボード412、マウス413、ディスプレイ414等で構成されている。PC本体411には、CPUやROMやRAMやHDDやMODEMやNICが装備されている。PC本体411のHDDには、Webブラウザ421やJWS422がインストールされている。
図6は、図1の融合機101のWeb機能に係るソフトウェア構成図である。図6中の実線矢印は、図1の融合機101が自機(図2のオペレーションパネル202)をWebクライアントとするWebサーバとして機能する様子を表す。図6中の破線矢印は、図1の融合機101が他機(図5のPC401)をWebクライアントとするWebサーバとして機能する様子を表す。図1の融合機101には、種々のServlet431、種々のJSP432、種々のApplet433、種々のXlet434、JSDK Emulator435等のJava(登録商標)アプリケーションが存在する。JSDK Emulator435は、図1の融合機101とネットワークで接続されたサーバに存在することにしてもよい。
図7は、図1の融合機101に係るソフトウェア構成図である。Servlet431やJSP432等のJSDKアプリ147用のJSDKプラットフォーム148、Applet433やXlet434等のJSDKアプリ147用のJSDKプラットフォーム148、が図7Aでは個別化されていて図7Bでは共通化されている。図7Aを採用しても図7Bを採用してもよいのだが、ここでは図7Bを採用することにする。
以下、JSDKアプリ147とJSDKプラットフォーム148について説明した後、図1の融合機101の画面上(図2のオペレーションパネル202の画面上)やその端末装置の画面上(図5のPC401の画面上)で操作を行うための操作画面を図1の融合機101の画面上やその端末装置の画面上に表示するApplet433やXlet434やJava(登録商標)スタンドアロンアプリケーションについて説明する。
図8は、図1のJSDKアプリ147とJSDKプラットフォーム148のクラス図である。JSDKアプリ147とJSDKプラットフォーム148は、全体で1プロセスとして、同一プロセス上で実行される。JSDKアプリ147とJSDKプラットフォーム148中の各ブロックは、それぞれこの1プロセス上のスレッドとして、スレッド単位で並列的に実行(マルチスレッド)される。JSDKアプリ147とJSDKプラットフォーム148は、Java(登録商標)コンパイラによりソースコードからバイトコードに一括翻訳されており、Java(登録商標)仮想マシンにより逐次実行される。JSDKアプリ147とJSDKプラットフォーム148は、Java(登録商標) 2 Micro EditionのPersonal Basis Profileをベースとする実装となっている。
JSDKアプリ147としては、ユーザアプリ501と、JSDK GUI Manager511と、Task Bar Manager512と、Menu Server513等が存在する。
ユーザアプリ501は、融合機101のユーザ(例えばベンダ)がJSDKを使用して開発したJSDKアプリである。JSDK GUI Manager511は、他のJSDKアプリ(ユーザアプリ501等)を操作対象とする操作画面の表示等を行うJSDKアプリである。Task Bar Manager512は、他のJSDKアプリ(ユーザアプリ501等)を操作対象とするタスクバーの表示等を行うJSDKアプリである。Menu Server513は、Applet433乃至Xlet434を操作対象とするメニューページの表示等を行うServlet431乃至JSP432である。
ユーザアプリ501はここでは、Xletである。JSDK GUI Manager511はここでは、独自の拡張を施したXlet(XletEx)である。Task Bar Manager512はここでは、独自の拡張を施したXlet(XletEx)である。Menu Server513はここでは、Servlet乃至JSPである。
JSDKプラットフォーム148には、JSDK Main521と、JSDK Environment522と、Locale Manager523と、Xlet Manager531と、Multi Xlet Manager532と、JSDK Manager533と、Send Manager541と、Event Manager542と、System Event Manager543と、Panel Manager544と、Install Manager545と、Server/Client Manager546等のクラスが存在する。
JSDK Main521は、JSDKシステムの起動設定を行うクラスである。JSDK Environment522は、JSDKシステムの起動環境設定を行うクラスである。Locale Manager523は、国際化対応(言語指定)を行うクラスである。
Xlet Manager531は、1対1でXletのライフサイクルを管理するクラスである。ここでは、5個のXletのライフサイクルが1対1で5個のXlet Manager531によって管理される。Multi Xlet Manager532は、全てのXlet Manager531のライフサイクルを管理するクラスである。ここでは、5個のXlet Manager531のライフサイクルが全て1個のMulti Xlet Manager532によって管理される。JSDK Manager533は、JSDKシステム全体のライフサイクルを管理するクラスである。例えば、Multi Xlet Manager532,Send Manager541,Event Manager542,System Event Manager543,Panel Manager544,Install Manager545,Server/Client Manager546のライフサイクルが、JSDK Manager533によって管理される。
System Event Manager543は、図1のプラットフォーム132からのシステムイベント(電力モード等)の管理を行うクラスである。Panel Manager544は、1個のXletがオペレーションパネル202の画面を占有する際の調停等を行うクラスである。Install Manager545は、SDcardやWebからのインストールやアンインストールの管理を行うクラスである。
図8のJSDKシステムでは、APIとして、JSDK API551とJSDK API552が利用される。なお、XletとXletExの差異として、オブジェクトにアクセスするのにJSDK API551の利用とJSDKプラットフォーム148へのアクセスが可能である点が挙げられる。図1の融合機101にはさらに、図8のJSDKシステムに係る要素として、C言語とJava(登録商標)言語のインタフェースとなるJSDK Session553とNative JSDK Session554や、JSDKアプリ147とJSDKプラットフォーム148を実行するためJava(登録商標)仮想マシンであるCVM555や、Webサーバ用のJES556等が存在する。JES556は、Webクライアント用のJWS561、Webサーバ用のWebサーバソフト562、Webサーバ用のServlet Engine563、Webサーバ用のJSP Engine564等を包含する。
図9は、JSDKシステムの起動手順について説明するための図である。JSDKシステムではまず、JSDKアプリ147を起動するmain()関数を有するクラスであるJSDK Main521が、JSDK Environment522を生成(S1)する。続いて、JSDK Environment522が、Native層の構築(S2)と言語環境の構築(S3)をもって、JSDKシステムの実行環境の構築を行う。続いて、JSDK Environment522が、JSDK Manager533を生成(S4)する。JSDKシステムではそして、JSDK Manager533が、システム層のManagerを生成(S5−12)し、Multi Xlet Manager532とXlet Manager531を通じて、アプリ層のManagerを生成(S13−14)する。
図10は、JSDKシステムのGUIについて説明するための図である。融合機101の機能キー315(図4)を押すと、図9のS1−S14が実行されて、図10のGUIが融合機101のタッチパネル311(図4)に表示される。図10のGUIは、ユーザアプリ501を操作対象とする操作画面であり、図9のS13で起動されたJSDK GUI Manager511によって表示される。
図10Aは、画面を占有するユーザアプリ501の切替操作を行うための切替操作画面である。図10Bは、ユーザアプリ501の起動操作を行うための起動操作画面である。図10Cは、ユーザアプリ501の終了操作を行うための終了操作画面である。図10Dは、ユーザアプリ501のインストール操作を行うためのインストール操作画面である。図10Eは、ユーザアプリ501のアンインストール操作を行うためのアンインストール操作画面である。図10Aが、機能キー315を押した直後にタッチパネル311に表示される初期画面であり、図10A,B,C,D,Eは、それぞれ切り替え,起動,終了,インストール,アンインストールのボタンをタッチすると表示されることになる。
SimplePrint,SimpleCopy,SimpleOcr,SimpleScan等はそれぞれユーザアプリ501である。
図11は、起動操作画面の表示手順について説明するための図である。切替操作画面で起動のボタンがタッチされると、JSDK GUI Manager511からInstall Manager545に、インストール済みのユーザアプリ501の一覧要求が送信(S1)される。これに応じて、Install Manager545は、インストール済みのユーザアプリ501の格納位置に係る情報(融合機101内のNVRAMに格納されている)を元に、インストール済みのユーザアプリ501のJNLPファイルを取得(S2)する。融合機101にセットされたSDcardからは、当該SDcard内のユーザアプリ501のJNLPファイルが取得される。融合機101内のHDDからは、当該HDD内のユーザアプリ501のJNLPファイルが取得される。JNLPファイルは、ユーザアプリ501と1対1で対応しており、ユーザアプリ501の定義付けに係る情報を含んでいる。そして、インストール済みのユーザアプリ501のJNLPファイルの内容を元に、Install Manager545からJSDK GUI Manager511に、インストール済みのユーザアプリ501の一覧応答が送信(S3)される。これにより、切替操作画面から起動操作画面に画面が移ることになる。
図12は、起動処理の実行手順について説明するための図である。起動操作画面で選択操作が実行されて確認画面で確認操作が実行されると、JSDK GUI Manager511からJSDK Manager533に、ユーザアプリ501の起動要求が送信(S1)される。これに応じて、JSDK Manager533からMulti Xlet Manager532に、Authentication Manager547による認証処理を経由してから、ユーザアプリ501の起動要求が送信(S2)される。これに応じて、Multi Xlet Manager532がXlet Manager531を起動(S3)し、Xlet Manager531がPanel Manager544からルートウィンドウを取得(S4)し、Xlet Manager531がユーザアプリ501を起動(S5)する。そして、Multi Xlet Manager532からJSDK Manager533に、ユーザアプリ501の起動応答が送信(S6)される。そして、JSDK Manager533からJSDK GUI Manager511に、ユーザアプリ501の起動応答が送信(S7)される。
図13は、インストール操作画面の表示手順について説明するための図である。切替操作画面上でインストールのボタンがタッチされると、JSDK GUI Manager511からInstall Manager545に、ユーザアプリ501の一覧要求が送信(S1)される。これに応じて、Install Manager545は、ユーザアプリ501のJNLPファイルを取得(S2)する。融合機101にセットされたSDcardからは、当該SDcard内のユーザアプリ501のJNLPファイルが取得される。融合機101とネットワークで接続されたWebサーバからは、当該Webサーバ内のユーザアプリ501のJNLPファイルが取得される。JNLPファイルは、ユーザアプリ501と1対1で対応しており、ユーザアプリ501の定義付けに係る情報を含んでいる。そして、ユーザアプリ501のインストール状況に関する情報(融合機101内のNVRAMに格納されている)や、ユーザアプリ501のJNLPファイルの内容を元にして、Install Manager545からJSDK GUI Manager511に、ユーザアプリ501の一覧応答が送信(S3)される。これにより、切替操作画面からインストール操作画面に画面が移ることになる。
図14は、インストール処理の実行手順について説明するための図である。インストール操作画面で選択操作が実行されて確認画面で確認操作が実行されると、JSDK GUI Manager511からInstall Manager545に、ユーザアプリ501のインストール要求が送信(S1)される。これに応じて、Install Manager545は、Authentication Manager547による認証処理を経由してから、ユーザアプリ501をインストール(S2)する。そして、Install Manager545からJSDK GUI Manager511に、ユーザアプリ501のインストール応答が送信(S3)される。
図15は、JNLPファイルの構文の例を表す。JNLP(Java(登録商標) Network Launching Protocol)ファイルはXML(eXtensible Markup Language)ファイルであり、JNLPファイル書式はJNLP規格に準拠している。ただし、JSDK向けに独自の拡張を施している部分があるため、以下その部分について説明する。
記述1は、informationエレメントであり、アプリケーション名を示すtitleエレメント(記述1A)や、ベンダ名を示すvenderエレメント(記述1B)や、ベンダの電話番号を示すtelephoneエレメント(記述1C)や、ベンダのファクス電話番号を示すfaxエレメント(記述1D)や、アプリケーションのプロダクトIDを示すproductIDエレメント(記述1E)を含んでいる。
記述2は、securityエレメントである。
記述3は、resourceエレメントであり、JSDKのバージョンを指定するjsdkエレメント(記述3A)や、JARファイル(アプリケーションの実行ファイル)とそのバージョンを指定するjarエレメント(記述3B)や、SUB−JNLPファイルを指定するsub−jnlpエレメント(記述3C)を含んでいる。
記述4は、updateエレメントであり、更新処理の実行方法を設定するエレメントである。autoであればアプリケーションの更新処理は自動更新で実行され、manualであればアプリケーションの更新処理は手動更新で実行され、mailであればアプリケーションの更新処理が実行可能である場合にその旨を通知する更新通知メールが配信される。
記述5は、installエレメントであり、インストール処理の実行方法を設定するエレメントである。autoであればアプリケーションのインストール先は自動選択にて選択され、manualであればアプリケーションのインストール先は手動選択にて選択される。
記述6は、アプリケーションのタイプが「GUI有」であるか「GUI無」であるかを示す。
以下、図1の融合機101の画面上(図2のオペレーションパネル202の画面上)やその端末装置の画面上(図5のPC401の画面上)で操作を行うための操作画面を図1の融合機101の画面上やその端末装置の画面上に表示する図6のApplet433やXlet434(スタンドアロンアプリケーションでもよい)について説明する。なお、図2のオペレーションパネル202の画面とは図4のタッチパネル311を意味するものであり、図5のPC401の画面とは図5のディスプレイ414を意味するものである。
(1)第1具体例
図16は、第1具体例に係るソフトウェア構成図である。図16の融合機101には、図2のオペレーションパネル202の画面上や図5のPC401の画面上で操作を行うための操作画面を図2のオペレーションパネル202の画面上や図5のPC401の画面上に表示するTrimming Applet601やTrimming Xlet602が存在する。
Trimming Applet601は、図1の融合機101や図5のPC401で図1のWebブラウザ181や図5のWebブラウザ421により実行される事になる。こうして表示される操作画面では、図1の融合機101に格納されている画像の印刷処理を同融合機101に実行させる旨の操作を行う事ができる。操作画面には、図1の融合機101に格納されている画像がサムネイル表示される。操作画面では、同操作画面にサムネイル表示されている画像の編集操作をもって、同融合機101に格納されている同画像の印刷条件の設定操作とする事ができる。ここでは、同操作画面にサムネイル表示されている画像の一部分をタッチパネル操作やマウス操作でトリミングして、同融合機101に格納されている同画像の一部分を印刷対象とする事ができる。
Trimming Xlet602は、図1の融合機101や図5のPC401で図1のJWS182(図8のJWS561でもよい)や図5のJWS422により実行される事になる。こうして表示される操作画面では、図1の融合機101に格納されている画像の印刷処理を同融合機101や同融合機101以外の画像形成装置(図5の融合機101A,B,Cやプリンタ102A,B,C)に実行させる旨の操作を行う事ができる。操作画面には、図1の融合機101に格納されている画像がサムネイル表示される。操作画面では、同操作画面にサムネイル表示されている画像の編集操作をもって、同融合機101に格納されている同画像の印刷条件の設定操作とする事ができる。ここでは、同操作画面にサムネイル表示されている画像の一部分をタッチパネル操作やマウス操作でトリミングして、同融合機101に格納されている同画像の一部分を印刷対象とする事ができる。
AppletやXletは、Webクライアント用のWebアプリケーションの一種である。Webアプリケーションは、種々の機器で実行できたり種々の機器を制御できたりと自由度の高いアプリケーションである。例えば、同一仕様のTrimming Applet601やTrimming Xlet602を複数機種の画像形成装置(別機種の融合機同士、別機種のプリンタ同士、融合機とプリンタ等)用のアプリケーションとする事も可能である。例えば、画面のある融合機用のTrimming Applet601やTrimming Xlet602を画面のないプリンタ内に実装しておく事により、プリンタの操作画面として融合機のタッチパネル風の操作画面をPCのディスプレイ上に実現する事も可能である。
図1の融合機101のTrimming Applet601がWebブラウザにより実行されて表示される操作画面でも、図1の融合機101のTrimming Xlet602がJWSにより実行されて表示される操作画面でも、同融合機101に印刷処理等の画像形成処理を実行させる事ができる。しかし、前者の操作画面と後者の操作画面で、同融合機101にも同融合機101以外の画像形成装置にも印刷処理等の画像形成処理を実行させる事ができるのは、後者の操作画面だけである。しかし、後者の操作画面でも無条件にできるのではなく、Xlet434を起動させる起動機能とXlet434の実行環境の差を吸収する吸収機能とを具備する「JSDK Emulator435」の存在が必要となる。JSDK Emulator435の吸収機能で吸収すべき実行環境の差は例えば、画像形成処理に係る機能等の画像形成装置に固有な機能に基づく実行環境の差である。図1の融合機101に固有な機能の具体例としては、アプリケーション131とプラットフォーム132のAPI(アプリケーションプログラムインタフェース)133や、図8のJSDK API551や、図8のJSDK API552が挙げられる。
図17は、Trimming Applet601に係るシーケンス図である。
図17は、図1の融合機101が自機(図2のオペレーションパネル202)をWebクライアントとするWebサーバとして機能する場合、図1の融合機101が他機(図5のPC401)をWebクライアントとするWebサーバとして機能する場合、の両者について統一的に説明するためのシーケンス図となっている。文中、Webブラウザ181とWebブラウザ421のことをWebブラウザ181等、JWS182とJWS422のことをJWS182等、Servlet Engine563とJSP Engine564のことをServlet Engine563等、と略記することにする。
先ず、オペレーションパネル202の画面上やPC401の画面上で、Webブラウザ181等により表示されている「メニューページボタン」が押下(S101)されると、Webブラウザ181等からWebサーバソフト562に「メニューページ」の転送要求が送信(S102)される。次に、Webサーバソフト562からServlet Engine563等に「メニューページ」の生成要求が送信(S103)される。次に、Servlet Engine563等がMenu Server513を融合機101内に起動(S104)させる。次に、Menu Server513が「メニューページ」を生成(S105)する。次に、Menu Server513が「メニューページ」をWebブラウザ181等に転送(S106)する。そして、オペレーションパネル202の画面上やPC401の画面上に、Webブラウザ181等により「メニューページ」が表示(S107)される。メニューページには、融合機101に格納されたApplet433やXlet434のリストが表示される。
次に、オペレーションパネル202の画面上やPC401の画面上で、メニューページに表示されているリストの中から「Trimming Applet601」が選択(S111)されると、Webブラウザ181等からWebサーバソフト562にTrimming Applet601の転送要求が送信(S112)される。次に、Webサーバソフト562がWebサーバとしてTrimming Applet601をWebブラウザ181等に転送(S113)して、Webブラウザ181等がWebクライアントとしてTrimming Applet601を融合機101内やPC401内に起動(S114)させる。次に、TrimmingApplet601からネットワークファイルアプリ145に「画像ファイル」のリストの転送要求が送信(S115)される。次に、ネットワークファイルアプリ145からTrimming Applet601に「画像ファイル」のリストが転送(S116)される。そして、オペレーションパネル202の画面上やPC401の画面上に、TrimmingApplet601により操作画面が表示(S117)される。操作画面には、融合機101に格納された「画像ファイル」のリストが表示される。操作画面では、融合機101に格納された「画像ファイル」の印刷処理を当該融合機101に実行させる旨の操作を行う事ができる。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されているリストの中から任意の「画像ファイル」が選択(S121)されると、TrimmingApplet601からネットワークファイルアプリ145に当該「画像ファイル」の画像データの転送要求が送信(S122)される。次に、ネットワークファイルアプリ145からTrimming Applet601に当該「画像ファイル」の画像データが転送(S123)される。そして、オペレーションパネル202の画面上やPC401の画面上で、TrimmingApplet601により当該「画像ファイル」の画像が操作画面に表示(S124)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されている「画像」の編集操作(融合機101に格納されている当該「画像」の印刷条件の設定操作)が実施(S131)されて、融合機101に格納されている当該「画像」の印刷処理を当該融合機101に実行させる旨の操作が実施(S132)されると、Trimming Applet601からプリンタアプリ142に当該「画像」の印刷処理に係る印刷要求が送信(S133)される。次に、当該「画像」の印刷が当該融合機101で実行(S134)される。次に、プリンタアプリ142からTrimming Applet601に当該「画像」の印刷処理に係る印刷応答が送信(S135)される。最後に、オペレーションパネル202の画面上やPC401の画面上で、当該「画像」の印刷が当該融合機101で実行された旨が操作画面に表示(S136)される。
図18は、Trimming Xlet602に係るシーケンス図である。
図18は、図1の融合機101が自機(図2のオペレーションパネル202)をWebクライアントとするWebサーバとして機能する場合、図1の融合機101が他機(図5のPC401)をWebクライアントとするWebサーバとして機能する場合、の両者について統一的に説明するためのシーケンス図となっている。文中、Webブラウザ181とWebブラウザ421のことをWebブラウザ181等、JWS182とJWS422のことをJWS182等、Servlet Engine563とJSP Engine564のことをServlet Engine563等、と略記することにする。
先ず、オペレーションパネル202の画面上やPC401の画面上で、Webブラウザ181等により表示されている「メニューページボタン」が押下(S201)されると、Webブラウザ181等からWebサーバソフト562に「メニューページ」の転送要求が送信(S202)される。次に、Webサーバソフト562からServlet Engine563等に「メニューページ」の生成要求が送信(S203)される。次に、Servlet Engine563等がMenu Server513を融合機101内に起動(S204)させる。次に、Menu Server513が「メニューページ」を生成(S205)する。次に、Menu Server513が「メニューページ」をWebブラウザ181等に転送(S206)する。そして、オペレーションパネル202の画面上やPC401の画面上に、Webブラウザ181等により「メニューページ」が表示(S207)される。メニューページには、融合機101に格納されたApplet433やXlet434のリストが表示される。
次に、オペレーションパネル202の画面上やPC401の画面上で、メニューページに表示されたリストの中から「Trimming Xlet602」が選択(S211)されると、Webブラウザ181等がJWS182等を融合機101内やPC501内に起動(S212)させる。次に、JWS182等からWebサーバソフト562にTrimming Xlet602の転送要求が送信(S213)される。次に、Webサーバソフト562がWebサーバとして、Trimming Xlet602とJSDK Emulator435(図1の融合機101や図6のサーバに格納されているもの)とをJWS182等に転送(S214)して、JWS182等がWebクライアントとして、JSDK Emulator435を融合機101内やPC501内に起動(S215)させて、JSDK Emulator435によりTrimming Xlet602を融合機101内やPC401内に起動(S216)させる。次に、Trimming Xlet602からネットワークファイルアプリ145に対して「画像ファイル」のリストの転送要求が送信(S217)される。次に、ネットワークファイルアプリ145からTrimming Xlet602に対して「画像ファイル」のリストが転送(S218)される。そして、オペレーションパネル202の画面上やPC401の画面上に、Trimming Xlet602により操作画面が表示(S219)される。操作画面には、融合機101に格納された「画像ファイル」のリストが表示される。操作画面では、融合機101に格納された「画像ファイル」の印刷処理を当該融合機101に実行させる旨の操作を行う事ができる。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されたリストの中から任意の「画像ファイル」が選択(S221)されると、Trimming Xlet602からネットワークファイルアプリ145に対して当該「画像ファイル」の画像データの転送要求が送信(S222)される。次に、ネットワークファイルアプリ145からTrimmingXlet602に対して当該「画像ファイル」の画像データが転送(S223)される。そして、オペレーションパネル202の画面上やPC401の画面上で、TrimmingXlet602により当該「画像ファイル」の画像が操作画面に表示(S224)される。
ここで、融合機101に格納されている「画像」の印刷処理を当該融合機101に実行させる場合について説明する。
先ず、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されている「画像」の編集操作(融合機101に格納されている当該「画像」の印刷条件の設定操作)が実施(S231)されて、融合機101に格納されている当該「画像」の印刷処理を当該融合機101に実行させる旨の操作が実施(S232)されると、Trimming Xlet601からプリンタアプリ142に当該「画像」の印刷処理に係る印刷要求が送信(S233)される。次に、当該「画像」の印刷が当該融合機101にて実行(S234)される。次に、プリンタアプリ142からTrimming Xlet601に当該「画像」の印刷処理に係る印刷応答が送信(S235)される。そして最後に、オペレーションパネル202の画面上やPC401の画面上で、当該「画像」の印刷が当該融合機101にて実行された旨が操作画面に表示(S236)される。
ここで、融合機101に格納されている「画像」の印刷処理を当該融合機101以外の画像形成装置に実行させる場合について説明する。
先ず、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されている「画像」の編集操作(融合機101に格納されている当該「画像」の印刷条件の設定操作)が実施(S241)されて、融合機101に格納されている当該「画像」の印刷処理を当該融合機101以外の任意の画像形成装置に実行させる旨の操作が実施(S242)されると、JSDK Emulator435が印刷先を当該融合機101から当該画像形成装置に変更(S243)する。次に、TrimmingXlet601から当該画像形成装置に当該「画像」の印刷処理に係る印刷要求が送信(S244)される。次に、当該「画像」の印刷が当該画像形成装置にて実行(S245)される。次に、当該画像形成装置からTrimmingXlet601に当該「画像」の印刷処理に係る印刷応答が送信(S246)される。そして最後に、オペレーションパネル202の画面上やPC401の画面上で、当該「画像」の印刷が当該画像形成装置にて実行された旨が操作画面に表示(S247)される。
さて、JSDK Emulator435は、Xlet434を起動させる起動機能とXlet434の実行環境の差を吸収する吸収機能とを具備する。JSDK Emulator435は、図18のS216ではTrimming Xlet602を起動させている。これが起動機能(図19)である。JSDK Emulator435は、図18のS216以降ではTrimming Xlet602と他のブロックとの通信のインタフェースとなりTrimming Xlet602の実行環境の差を吸収している。これが吸収機能(図19)である。なお、図18のS216以降の各ステップ(S217,S218,S219等)でのTrimming Xlet602と他のブロックとの通信はJSDK Emulator435を経由して実行されているのだが、図18では便宜上略記した。
また、JSDK Emulator435は、Xlet434の通信先を変更する変更機能を具備する。JSDK Emulator435は、図18のS243では印刷先を図1の融合機101から図1の融合機101以外の画像形成装置に変更している。これが変更機能(図19)である。JSDK Emulator435には、図19のように、Xlet434の通信先を変更する変更機能に係るブロックとして、Xlet434への入力先を変更するスイッチとなる入力変更部SWinと、Xlet434からの出力先を変更するスイッチとなる出力変更部SWoutが存在する。なお、JSDK Emulator435はここでは自機用と他機用を同じものとしたが、実行環境の差を吸収すべきが専ら他機に限定される場合は、JSDK Emulator435に自機用と他機用を設けて、変更機能は具備するものの起動機能や吸収機能は具備しないものを自機用としてもよい。
(2)第2具体例
図20は、第2具体例に係るソフトウェア構成図である。図20の融合機101には、図2のオペレーションパネル202の画面上や図5のPC401の画面上で操作を行うための操作画面を図2のオペレーションパネル202の画面上や図5のPC401の画面上に表示するManaging Applet603やManaging Xlet604が存在する。以下、第1具体例と第2具体例の共通事項については説明を省略する。
Managing Applet603は、図1の融合機101や図5のPC401で図1のWebブラウザ181や図5のWebブラウザ421により実行される事になる。こうして表示される操作画面では、図1の融合機101にプログラムをインストールする旨の操作や図1の融合機101内にプログラムを起動させる旨の操作を行う事ができる。操作画面の様子は、図10Dのインストール操作画面や図10Bの起動操作画面と同様である。
Managing Xlet604は、図1の融合機101や図5のPC401で図1のJWS182(図8のJWS561でもよい)や図5のJWS422により実行される事になる。こうして表示される操作画面では、図1の融合機101や図1の融合機101以外の画像形成装置にプログラムをインストールする旨の操作や図1の融合機101内や図1の融合機101以外の画像形成装置内にプログラムを起動させる旨の操作を行う事ができる。操作画面の様子は、図10Dのインストール操作画面や図10Bの起動操作画面と同様である。
図21は、第2具体例におけるプログラムのインストール方式について説明するための図である。
図21Aは、図1の融合機101にプログラムをインストールする旨の操作を、図2のオペレーションパネル202の画面上に表示されている操作画面で行う様子を表す。図1の融合機101のManaging Applet603が図1のWebブラウザ181により実行されて表示される操作画面(自機上MA操作画面と呼ぶことにする)でも、図1の融合機101のManaging Xlet604が図1のJWS182により実行されて表示される操作画面(自機上MX操作画面と呼ぶことにする)でも、図のように、同融合機101にプログラムをインストールする事ができる。
図中A1は、図1の融合機101にセットされたSDcardから図1の融合機101にプログラムをインストールする様子を表す。これは自機上MA操作画面でも自機上MX操作画面でも実施できる。図中A2は、図1の融合機101とネットワークで接続されたWebサーバから図1の融合機101にプログラムをインストールする様子を表す。これは自機上MA操作画面でも自機上MX操作画面でも実施できる。
図21Bは、図1の融合機101にプログラムをインストールする旨の操作を、図5のPC401の画面上に表示されている操作画面で行う様子を表す。図1の融合機101のManaging Applet603が図5のWebブラウザ421により実行されて表示される操作画面(他機上MA操作画面と呼ぶことにする)でも、図1の融合機101のManaging Xlet604が図5のJWS422により実行されて表示される操作画面(他機上MX操作画面と呼ぶことにする)でも、図のように、同融合機101にプログラムをインストールする事ができる。
図中B1は、図5のPC401にセットされたSDcardから図1の融合機101にプログラムをインストールする様子を表す。これは他機上MA操作画面では実施できないが他機上MX操作画面では実施できる。図中B2は、図1の融合機101にセットされたSDcardから図1の融合機101にプログラムをインストールする様子を表す。これは他機上MA操作画面では実施できないが他機上MX操作画面では実施できる。図中B3は、図5のPC401とネットワークで接続されたWebサーバから図1の融合機101にプログラムをインストールする様子を表す。これは他機上MA操作画面でも他機上MA操作画面でも実施できる。図中B4は、図1の融合機101とネットワークで接続されたWebサーバから図1の融合機101にプログラムをインストールする様子を表す。これは他機上MA操作画面でも他機上MA操作画面でも実施できる。
図21Cは、図1の融合機101を含む又は除く2台以上の画像形成装置にプログラムを一斉にインストールする旨の操作を、図5のPC401の画面上に表示されている操作画面で行う様子を表す。図1の融合機101のManaging Applet603が図5のWebブラウザ421により実行されて表示される操作画面(他機上MA操作画面と呼ぶことにする)では、各画像形成装置にプログラムをインストールする事ができないものの、図1の融合機101のManaging Xlet604が図5のJWS422により実行されて表示される操作画面(他機上MX操作画面と呼ぶことにする)では、各画像形成装置にプログラムをインストールする事ができる。
図中C1は、図5のPC401にセットされたSDcardから図1の融合機101を含む又は除く2台以上の画像形成装置にプログラムをインストールする様子を表す。これは他機上MA操作画面では実施できないが他機上MX操作画面では実施できる。図中C2は、図5のPC401とネットワーク接続されたWebサーバから図1の融合機101を含む又は除く2台以上の画像形成装置にプログラムをインストールする様子を表す。これは他機上MA操作画面では実施できないが他機上MX操作画面では実施できる。
図21のB1,B2,C1,C2でSDcard等の記憶媒体やWebサーバ等の情報処理装置から図1の融合機101や図1の融合機101以外の画像形成装置にプログラムをインストールする事ができるのは、他機上MA操作画面と他機上MX操作画面の内で、他機上MX操作画面だけである。しかし、他機上MX操作画面でも無条件にできるのではなく、Xlet434を起動させる起動機能とXlet434の実行環境の差を吸収する吸収機能とを具備する「JSDK Emulator435」の存在が必要となる。
図22は、Managing Applet603に係るシーケンス図である。
先ず、オペレーションパネル202の画面上やPC401の画面上で、Webブラウザ181等により表示されている「メニューページボタン」が押下(S301)されると、Webブラウザ181等からWebサーバソフト562に「メニューページ」の転送要求が送信(S302)される。次に、Webサーバソフト562からServlet Engine563等に「メニューページ」の生成要求が送信(S303)される。次に、Servlet Engine563等がMenu Server513を融合機101内に起動(S304)させる。次に、Menu Server513が「メニューページ」を生成(S305)する。次に、Menu Server513が「メニューページ」をWebブラウザ181等に転送(S306)する。そして、オペレーションパネル202の画面上やPC401の画面上に、Webブラウザ181等により「メニューページ」が表示(S307)される。メニューページには、融合機101に格納されたApplet433やXlet434のリストが表示される。
次に、オペレーションパネル202の画面上やPC401の画面上で、メニューページに表示されているリストの中から「Managing Applet603」が選択(S311)されると、Webブラウザ181等からWebサーバソフト562にManaging Applet603の転送要求が送信(S312)される。次に、Webサーバソフト562がWebサーバとしてManaging Applet603をWebブラウザ181等に転送(S313)して、Webブラウザ181等がWebクライアントとしてManaging Applet603を融合機101内やPC401内に起動(S314)させる。そしてオペレーションパネル202の画面上やPC401の画面上に、Managing Applet603により操作画面が表示(S315)される。操作画面には、融合機101にインストール可能な「プログラム」のリストや融合機101内に起動可能な「プログラム」のリストが表示されると共に、操作画面では、融合機101に「プログラム」をインストールする旨の操作や融合機101内に「プログラム」を起動させる旨の操作を行う事ができる。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されている「インストールボタン」が押下(S321)されると、Managing Applet603からInstall Manager545に「プログラム」のリストの転送要求が送信(S322)される。次に、Install Manager545が融合機101にインストール可能な「プログラム」のJNLPファイルをSDcardやWebサーバから取得(S323)する。次に、Install Manager545からManagingApplet603に「プログラム」のリストが転送(S324)される。そしてオペレーションパネル202の画面上やPC401の画面上で、Managing Applet603により融合機101にインストール可能な「プログラム」のリストが操作画面に表示(S325)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されているリストの中から任意の「プログラム」が選択(S331)され、融合機101に任意の「プログラム」をインストールする旨の操作が実施(S332)されると、ManagingApplet603からInstallManager545に当該「プログラム」に係るインストール要求が送信(S333)される。次に、当該「プログラム」のJARファイルがSDcardやWebサーバから取得(S334)され、当該融合機101に当該「プログラム」がインストール(S335)される。次に、InstallManager545からManagingApplet603に当該「プログラム」に係るインストール応答が送信(S336)される。そしてオペレーションパネル202の画面上やPC401の画面上で、当該融合機101に当該「プログラム」がインストールされた旨が操作画面に表示(S337)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されている「起動ボタン」が押下(S341)されると、ManagingApplet603からInstallManager545に「プログラム」のリストの転送要求が送信(S342)される。次に、Install Manager545が融合機101内に起動可能な「プログラム」のJNLPファイルをSDcardやHDDから取得(S343)する。次に、Install Manager545からManaging Applet603に「プログラム」のリストが転送(S344)される。そしてオペレーションパネル202の画面上やPC401の画面上で、Managing Applet603により融合機101内に起動可能な「プログラム」のリストが操作画面に表示(S345)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されているリストの中から任意の「プログラム」が選択(S351)され、融合機101内に任意の「プログラム」を起動させる旨の操作が実施(S352)されると、ManagingApplet603からJSDK Manager533に当該「プログラム」に係る起動要求が送信(S353)される。次に、当該「プログラム」のJARファイルがSDcardやHDDから取得(S354)されて、当該融合機101内に当該「プログラム」が起動(S355)される。次に、JSDK Manager533からManagingApplet603に当該「プログラム」に係る起動応答が送信(S356)される。そしてオペレーションパネル202の画面上やPC401の画面上で、当該融合機101内に当該「プログラム」が起動された旨が操作画面に表示(S357)される。
図23は、Managing Xlet604に係るシーケンス図である。
先ず、オペレーションパネル202の画面上やPC401の画面上で、Webブラウザ181等により表示されている「メニューページボタン」が押下(S401)されると、Webブラウザ181等からWebサーバソフト562に「メニューページ」の転送要求が送信(S402)される。次に、Webサーバソフト562からServlet Engine563等に「メニューページ」の生成要求が送信(S403)される。次に、Servlet Engine563等がMenu Server513を融合機101内に起動(S404)させる。次に、Menu Server513が「メニューページ」を生成(S405)する。次に、Menu Server513が「メニューページ」をWebブラウザ181等に転送(S406)する。そして、オペレーションパネル202の画面上やPC401の画面上に、Webブラウザ181等により「メニューページ」が表示(S407)される。メニューページには、融合機101に格納されたApplet433やXlet434のリストが表示される。
次に、オペレーションパネル202の画面上やPC401の画面上で、メニューページに表示されたリストの中から「Managing Xlet604」が選択(S411)されると、Webブラウザ181等がJWS182等を融合機101内やPC501内に起動(S412)させる。次に、JWS182等からWebサーバソフト562にManaging Xlet604の転送要求が送信(S413)される。次に、Webサーバソフト562がWebサーバとして、Managing Xlet604とJSDK Emulator435(図1の融合機101や図6のサーバに格納されているもの)とをJWS182等に転送(S414)して、JWS182等がWebクライアントとして、JSDK Emulator435を融合機101内やPC501内に起動(S415)させて、JSDK Emulator435によりManaging Xlet604を融合機101内やPC401内に起動(S416)させる。そしてオペレーションパネル202の画面上やPC401の画面上に、Managing Xlet604により操作画面が表示(S417)される。操作画面には、融合機101等の種々の画像形成装置にインストール可能な「プログラム」のリストや融合機101等の種々の画像形成装置内に起動可能な「プログラム」のリストが表示されると共に、操作画面では、融合機101等の種々の画像形成装置に「プログラム」をインストールする旨の操作や融合機101等の種々の画像形成装置内に「プログラム」を起動させる旨の操作を行う事ができる。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示された「インストールボタン」が押下(S421)されると、ManagingXlet604からInstallManager545に対して「プログラム」のリストの転送要求が送信(S422)される。次に、Install Manager545が融合機101等の種々の画像形成装置にインストール可能な「プログラム」のJNLPファイルをSDcardやWebサーバから取得(S423)する。次に、InstallManager545からManagingXlet604に対して「プログラム」のリストが転送(S324)される。そして、オペレーションパネル202の画面上やPC401の画面上で、ManagingXlet604により融合機101等の種々の画像形成装置にインストール可能な「プログラム」のリストが操作画面に表示(S425)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されたリストの中から任意の「プログラム」が選択(S431)されて、融合機101等の種々の画像形成装置に任意の「プログラム」をインストールする旨の操作が実施(S432)されると、Managing Xlet604から当該融合機101(Install Manager545)等の種々の画像形成装置に当該「プログラム」に係るインストール要求が送信(S433)される。次に、当該「プログラム」のJARファイルがSDcardやWebサーバから取得(S434)されて、当該融合機101等の種々の画像形成装置に当該「プログラム」がインストール(S435)される。次に、当該融合機101(InstallManager545)等の種々の画像形成装置からManagingXlet604に対して当該「プログラム」に係るインストール応答が送信(S436)される。そしてオペレーションパネル202の画面上やPC401の画面上で、当該融合機101等の種々の画像形成装置に当該「プログラム」がインストールされた旨が操作画面に表示(S437)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示された「起動ボタン」が押下(S441)されると、Managing Xlet604からInstallManager545に対して「プログラム」のリストの転送要求が送信(S442)される。次に、InstallManager545が融合機101等の種々の画像形成装置内に起動可能な「プログラム」のJNLPファイルをSDcardやHDD等から取得(S443)する。次に、InstallManager545からManaging Xlet604に対して「プログラム」のリストが転送(S444)される。そして、オペレーションパネル202の画面上やPC401の画面上で、Managing Xlet604により融合機101等の種々の画像形成装置内に起動可能な「プログラム」のリストが操作画面に表示(S445)される。
次に、オペレーションパネル202の画面上やPC401の画面上で、操作画面に表示されたリストの中から任意の「プログラム」が選択(S451)され、融合機101等の種々の画像形成装置内に任意の「プログラム」を起動させる旨の操作が実施(S452)されると、Managing Xlet604から当該融合機101(JSDK Manager533)等の種々の画像形成装置に対して当該「プログラム」に係る起動要求が送信(S453)される。次に、当該「プログラム」のJARファイルがSDcardやHDD等から取得(S454)され、当該融合機101等の種々の画像形成装置内に当該「プログラム」が起動(S455)される。次に、当該融合機101(JSDK Manager533)等の種々の画像形成装置からManaging Xlet604に当該「プログラム」に係る起動応答が送信(S456)される。そしてオペレーションパネル202の画面上やPC401の画面上で、当該融合機101等の種々の画像形成装置内に当該「プログラム」が起動された旨が操作画面に表示(S457)される。
上述したように、第1及び第2具体例によれば、画像形成装置101におけるAppletやXlet等のアプリケーションをPC401において実行することができる。特に、Xletについては、Webブラウザからは独立してEmulator435によって起動されるものである。上記のようにEmulator435は実行環境の差を吸収する吸収機能を有する。したがって、画像形成装置に対して作成されるXletをそのまま(何ら変更を加えずに)PC401上において実行させることができる。よって、Xletの開発に対する開発工数を軽減させることができる。
(3)特殊な融合機
通常の融合機101は、1枚のマザーボードと1枚のLANボードを備えており1個のMACアドレスと1個のIPアドレスを有しているのに対して、ある特殊な融合機101は、2枚のマザーボードと2枚のLANボードを備えており2個のMACアドレスと2個のIPアドレスを有している。一方は融合機101用であり他方はオペレーションパネル202用であり、両者はTCP/IPで通信を行う。あたかも1台の融合機101に2台のPCが搭載されているような実装である。オペレーションパネル202の制御が融合機101の制御から独立しているため、PCで実行するような大容量のアプリケーションを融合機101で実行する事ができる。
上記の第1具体例や第2具体例は、この特殊な融合機101についても適用されるものである。この特殊な融合機101のオペレーションパネル202がWebクライアントとなる場合について考察するに、分類としては「自機」がWebクライアントとなる場合に属するものの、情報処理の実態としては「他機」がWebクライアントとなる場合に近いところもあるのである。
(変形例)
図1の融合機101は、本発明「画像形成装置」の実施例に該当するものであり、図1の融合機101等によって実行される情報処理は、本発明「アプリケーション実行方法」の実施例に該当するものである。当該アプリケーション実行方法をコンピュータに実行させるコンピュータプログラムは、本発明「アプリケーション実行プログラム」の実施例に該当するものであり、当該アプリケーション実行方法をコンピュータに実行させるコンピュータプログラムが記録されたCD−ROMやDVD−ROMやSDメモリカードは、本発明「記録媒体」の実施例に該当するものである。
(エミュレータ)
図24は、本発明の実施例に該当するPC701を表す。図24のPC701は、PC本体711、キーボード712、マウス713、ディスプレイ714で構成されている。図24のPC本体711には、CPUやROMやRAMやHDDやMODEMやNICが装備されている。図24のPC本体711のHDDには、Webブラウザ721やJWS722がインストールされている。
図24のPC701は、図5のPC401と同様、図1の融合機101とネットワークで接続されており、図5のPC401と同様、図1の融合機101をWebサーバとするWebクライアントとして機能する。第1具体例や第2具体例において図5のPC401が発揮する機能を図24のPC701が発揮する。図5のWebブラウザ421やJWS422が担う役割は図24のWebブラウザ721やJWS722が担う。
図24のPC701は、図1の融合機101のエミュレータとして機能する。図24のキーボード712やマウス713は、図2のオペレーションパネル202に代わり、オペレータが入力を行うためのハードウェア(操作部)となる。図24のディスプレイ714は、図2のオペレーションパネル202に代わり、オペレータが出力を得るためのハードウェア(表示部)となる。
図25は、図24のPC701内のJSDKアプリ147とJSDKプラットフォーム148のクラス図である。図1の融合機101と同様のJSDKアプリ147とJSDKプラットフォーム148が、図25のPC701内にも存在するのである。図1の融合機101内のJSDKアプリ147とJSDKプラットフォーム148のクラス図については、図8を参照されたい。以下、図8と図25の差異について説明する。
第1に、図8のPanel Manager544は、図25のPanel Manager Emulator744に置換されている。第2に、図8のJSDK Session553は、図25のEmulator JSDK Session753に置換されている。第3に、図8のNative JSDK Session554は、図25のEvent Emulator754に置換されている。第4には、図8のCVM555は、図25のJVM755に置換されている。
Panel Manager Emulator744は、Panel Manager544をエミュレートして、オペレーションパネル202の操作をキーボード712やマウス713の操作に変換するクラスである。Emulator JSDK Session753は、通信経路の確立処理を実行するクラスである。Event Emulator754は、融合機101の動作をエミュレートするクラスである。JVM755は、JSDKアプリ147とJSDKプラットフォーム148を実行するためJava(登録商標)仮想マシンである。
なお、PC701内のJSDKシステムの起動手順は図9と同様であり、PC701内のJSDKシステムのGUIは図10と同様である。当該GUIは、融合機101内又はPC701内のユーザアプリ501を操作対象とする操作画面であって、PC701内のJSDK GUI Manager511により表示される。操作部はキーボード712とマウス713であり、表示部はディスプレイ714である。
図26は、図1の融合機101内で実行される遠隔操作の準備処理の実行手順について説明するための図である。
最初に、融合機101内のServer/Client Manager546とPC701内のServer/Client Manager546との間で、セッションが確立(S1)される。
次に、融合機101内のServer/Client Manager546は、遠隔操作に移行できるか否かを融合機101内のJSDK Manager533に問い合わせて、遠隔操作に移行できるか否かを判断(S2)する。
次に、融合機101内のServer/Client Manager546は、遠隔操作に移行できる場合には、遠隔操作に必要なメッセージに係る要求を、融合機101内のSend Manager541を介してPC701に送信(S3)して、遠隔操作に必要なメッセージに係る応答を、融合機101内のEvent Manager542を介してPC701から受信(S4)する。
次に、融合機101内のServer/Client Manager546は、遠隔操作用の情報をPC701に転送する旨の要求を、Panel Manager544に送信(S5)する。
最後に、融合機101内のServer/Client Manager546とPC701内のServer/Client Manager546との間で、遠隔操作準備処理が完了した旨の通知が授受(S6)される。これによって、PC701からの融合機101の遠隔操作が可能になる。
さて、図1の融合機101のエミュレータとして機能する図24のPC701を、図1の融合機101をWebサーバとするWebクライアントとして利用することには、次のような利点がある。第1に、Applet433やXlet434のデバッグ環境を実現できると言った利点がある。第1具体例のApplet601やXlet602や、第2具体例のApplet603やXlet604のデバッグ作業を、図1の融合機101の遠隔操作等も適宜利用しつつ図1の融合機101に似た環境で実施することができるのである。第2に、Applet433やXlet434を利用する際に図1の融合機101の遠隔操作を適宜利用できると言った利点がある。第1具体例のApplet601やXlet602や、第2具体例のApplet603やXlet604を利用する際に図1の融合機101の操作が必要になったような場合には、図1の融合機101の遠隔操作を適宜利用することができるのである。
(変形例)
図24のPC701は、本発明「端末装置」の実施例に該当するものであり、図24のPC701によって実行される情報処理は、本発明「情報処理方法」の実施例に該当するものである。当該情報処理方法をコンピュータに実行させるコンピュータプログラムは、本発明「情報処理プログラム」の実施例に該当するものであり、当該情報処理方法をコンピュータに実行させるコンピュータプログラムが記録されたCDROMやDVDROMやSDメモリカードは、本発明「記録媒体」の実施例に該当するものである。
101 融合機
102 プリンタ
111 ハードウェア
112 ソフトウェア
113 融合機起動部
121 撮像部
122 印刷部
123 その他のハードウェア
131 アプリケーション
132 プラットフォーム
133 アプリケーションプログラムインタフェース
134 エンジンインタフェース
135 仮想アプリケーションサービス
141 コピーアプリ
142 プリンタアプリ
143 スキャナアプリ
144 ファクシミリアプリ
145 ネットワークファイルアプリ
146 CSDKアプリ
147 JSDKアプリ
148 JSDKプラットフォーム
151 コントロールサービス
152 システムリソースマネージャ
153 ハンドラ
161 ネットワークコントロールサービス
162 ファクシミリコントロールサービス
163 デリバリコントロールサービス
164 エンジンコントロールサービス
165 メモリコントロールサービス
166 オペレーションパネルコントロールサービス
167 サーティフィケーションコントロールサービス
168 ユーザディレクトリコントロールサービス
169 システムコントロールサービス
171 ファクシミリコントロールユニットハンドラ
172 イメージメモリハンドラ
181 Webブラウザ
182 JWS
201 コントローラ
202 オペレーションパネル
203 ファクシミリコントロールユニット
211 CPU
212 ASIC
221 NB
222 SB
231 MEM−P
232 MEM−C
233 HDD
234 メモリカードスロット
235 メモリカード
241 NIC
242 USBデバイス
243 IEEE1394デバイス
244 セントロニクスデバイス
301 原稿セット部
302 給紙部
303 排紙部
311 タッチパネル
312 テンキー
313 スタートボタン
314 リセットボタン
315 機能キー
316 初期設定ボタン
321 ADF
322 フラットベッド
323 フラットベッドカバー
401 PC
411 PC本体
412 キーボード
413 マウス
414 ディスプレイ
421 Webブラウザ
422 JWS
431 Servlet
432 JSP
433 Applet
434 Xlet
435 JSDK Emulator
501 ユーザアプリ
511 JSDK GUI Manager
512 Task Bar Manager
513 Menu Server
521 JSDK Main
522 JSDK Environment
523 Locale Manager
531 Xlet Manager
532 Multi Xlet Manager
533 JSDK Manager
541 Send Manager
542 Event Manager
543 System Event Manager
544 Panel Manager
545 Install Manager
546 Server/Client Manager
547 Authentication Manager
551 JSDK API
552 JSDK API
553 JSDK Session
554 Native JSDK Session
555 CVM
556 JES
561 JWS
562 Webサーバソフト
563 Servlet Engine
564 JSP Engine
601 Trimming Applet
602 Trimming Xlet
603 Managing Applet
604 Managing Xlet
701 PC
711 PC本体
712 キーボード
713 マウス
714 ディスプレイ
721 Webブラウザ
722 JWS
特開2002−84383号公報

Claims (17)

  1. 画像形成装置とネットワークを介して接続される端末装置であって、
    当該端末装置の画面上で前記画像形成装置の操作を行うための操作画面を当該端末装置の画面上に表示する、当該端末装置におけるアプリケーションプログラムからの画像形成処理の実行を求める要求を、前記画像形成装置が有するインタフェースに対応させて受け付け、該要求を前記画像形成装置に送信して該要求に対応した前記画像形成処理を前記画像形成装置に実行させる実行環境吸収手段を有することを特徴とする端末装置。
  2. 前記端末装置を前記実行環境吸収手段として機能させる所定のプログラムを前記画像形成装置より受信し、前記所定のプログラムを当該端末装置内に起動させる起動手段を有することを特徴とする請求項1記載の端末装置。
  3. 前記実行環境吸収手段は、前記画像形成装置が当該端末装置に転送した前記アプリケーションプログラムを、当該端末装置内に起動させることを特徴とする請求項1又は2記載の端末装置。
  4. 前記操作画面では、前記アプリケーションプログラムを当該端末装置に転送した画像形成装置にプログラムをインストールする操作を行う事ができることを特徴とする請求項1乃至3いずれか一項記載の端末装置。
  5. 前記操作画面では、前記アプリケーションプログラムを当該端末装置に転送した画像形成装置以外の画像形成装置にプログラムをインストールする操作を行う事ができることを特徴とする請求項1乃至3いずれか一項記載の端末装置。
  6. 前記操作画面では、前記アプリケーションプログラムを当該端末装置に転送した画像形成装置内にプログラムを起動させる操作を行う事ができることを特徴とする請求項1乃至5いずれか一項記載の端末装置。
  7. 前記操作画面では、前記アプリケーションプログラムを当該端末装置に転送した画像形成装置以外の画像形成装置内にプログラムを起動させる操作を行う事ができることを特徴とする請求項1乃至5いずれか一項記載の端末装置。
  8. 前記操作画面では、前記アプリケーションプログラムを当該端末装置に転送した画像形成装置に画像形成処理を実行させる操作を行う事ができることを特徴とする請求項1乃至5いずれか一項記載の端末装置。
  9. 前記操作画面では、前記アプリケーションプログラムを当該端末装置に転送した画像形成装置以外の画像形成装置に画像形成処理を実行させる操作を行う事ができることを特徴とする請求項1乃至5いずれか一項記載の端末装置。
  10. 前記操作画面では、前記アプリケーションプログラムを当該端末装置に転送した画像形成装置に格納されている画像の印刷処理を当該画像形成装置に実行させる操作を行う事ができることを特徴とする請求項8記載の端末装置。
  11. 前記操作画面では、前記アプリケーションプログラムを当該端末装置に転送した画像形成装置に格納されている画像の印刷処理を当該画像形成装置以外の画像形成装置に実行させる操作を行う事ができることを特徴とする請求項9記載の端末装置。
  12. 前記操作画面には、前記アプリケーションプログラムを当該端末装置に転送した画像形成装置に格納されている画像が表示されることを特徴とする請求項10又は11記載の端末装置。
  13. 前記操作画面では、当該操作画面に表示されている画像の編集操作をもって、前記アプリケーションプログラムを当該端末装置に転送した画像形成装置に格納されている画像の印刷条件の設定操作とする事ができることを特徴とする請求項12記載の端末装置。
  14. 前記アプリケーションプログラムは、Webアプリケーションであることを特徴とする請求項1乃至13いずれか一項記載の端末装置。
  15. 画像形成装置とネットワークを介して接続される端末装置が、
    当該端末装置の画面上で前記画像形成装置の操作を行うための操作画面を当該端末装置の画面上に表示する、当該端末装置におけるアプリケーションプログラムからの画像形成処理の実行を求める要求を、前記画像形成装置が有するインタフェースに対応させて受け付け、該要求を前記画像形成装置に送信して該要求に対応した前記画像形成処理を前記画像形成装置に実行させる実行環境吸収手順を実行することを特徴とする情報処理方法。
  16. 請求項15記載の情報処理方法をコンピュータに実行させる情報処理プログラム。
  17. 請求項15記載の情報処理方法をコンピュータに実行させる情報処理プログラムが記録されたコンピュータ読取可能な記録媒体。
JP2010287172A 2004-09-07 2010-12-24 端末装置、情報処理方法、情報処理プログラム、及び記録媒体 Expired - Fee Related JP4862094B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010287172A JP4862094B2 (ja) 2004-09-07 2010-12-24 端末装置、情報処理方法、情報処理プログラム、及び記録媒体

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2004260190 2004-09-07
JP2004260188 2004-09-07
JP2004260190 2004-09-07
JP2004260188 2004-09-07
JP2010287172A JP4862094B2 (ja) 2004-09-07 2010-12-24 端末装置、情報処理方法、情報処理プログラム、及び記録媒体

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2005237851A Division JP4769515B2 (ja) 2004-09-07 2005-08-18 アプリケーション実行方法、情報処理装置、画像形成装置、アプリケーション実行プログラム、記録媒体、及び情報処理システム

Publications (2)

Publication Number Publication Date
JP2011120250A JP2011120250A (ja) 2011-06-16
JP4862094B2 true JP4862094B2 (ja) 2012-01-25

Family

ID=44284937

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010287172A Expired - Fee Related JP4862094B2 (ja) 2004-09-07 2010-12-24 端末装置、情報処理方法、情報処理プログラム、及び記録媒体

Country Status (1)

Country Link
JP (1) JP4862094B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001256072A (ja) * 2000-03-10 2001-09-21 Sharp Corp システムエミュレータ
JP2002133316A (ja) * 2000-10-27 2002-05-10 Canon Inc アプリケーション・プログラム課金システム、装置、集計サーバ、課金管理サーバ、アプリケーション・プログラム課金方法、課金プログラム及び課金プログラムを記録した記録媒体
JP4198551B2 (ja) * 2002-07-26 2008-12-17 株式会社リコー 画像形成装置およびプログラム実行方法

Also Published As

Publication number Publication date
JP2011120250A (ja) 2011-06-16

Similar Documents

Publication Publication Date Title
JP4769515B2 (ja) アプリケーション実行方法、情報処理装置、画像形成装置、アプリケーション実行プログラム、記録媒体、及び情報処理システム
JP4625343B2 (ja) 画像形成装置、端末装置、情報処理方法、情報処理プログラム、及び記録媒体
JP4597834B2 (ja) 画像形成装置、情報処理方法、情報処理プログラム及び記録媒体
US8767244B2 (en) Image forming apparatus, information processing apparatus, information processing method, information processing program and storage medium
US9164865B2 (en) Image processing apparatus, method, program, and computer readable recording medium for controlling operation switching and displaying at occurrence of error conditions
JP4704245B2 (ja) 画像形成装置、情報処理方法、プログラム、及び記録媒体
JP4843386B2 (ja) 機器、情報処理方法、情報処理プログラム、及び記録媒体
JP2006222569A (ja) 画像形成装置、情報処理方法、情報処理プログラム、及び記録媒体
JP4360992B2 (ja) 画像形成装置、情報処理方法、情報処理プログラム、及び記録媒体
JP5664692B2 (ja) 電子機器、画像形成装置、情報処理方法、情報処理プログラム、及び記録媒体
JP2007048270A (ja) 画像形成装置、情報処理装置、情報処理方法、情報処理プログラム、及び記録媒体
JP2006079211A (ja) 画像形成装置、情報処理方法、情報処理プログラム、及び記録媒体
JP5418543B2 (ja) 端末装置、情報処理方法、情報処理プログラム、記録媒体及び情報処理システム
JP4459033B2 (ja) 画像形成装置、端末装置、情報処理方法、情報処理プログラム、及び記録媒体
JP4862094B2 (ja) 端末装置、情報処理方法、情報処理プログラム、及び記録媒体
JP5648723B2 (ja) 機器、情報処理方法、プログラム、記録媒体、及び情報処理システム
JP2005269439A (ja) 画像形成装置、情報処理方法、情報処理プログラム、及び記録媒体
JP5565439B2 (ja) 装置、情報処理方法、情報処理プログラム、及び記録媒体
JP2013164866A (ja) 機器、情報処理システム、情報処理方法、プログラム、及び記録媒体

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110517

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110802

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110916

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111011

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111107

R150 Certificate of patent or registration of utility model

Ref document number: 4862094

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141111

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees