Descargar
Desarrollar
Cuenta
Descargar
Desarrollar
Entrar
Forgot Account/Password
Crear Cuenta
Idioma
Ayuda
Idioma
Ayuda
×
Entrar
Nombre de usuario
Contraseña
×
Forgot Account/Password
Translation Status of Español
Categoría:
Software
Gente
PersonalForge
Magazine
Wiki
Buscar
OSDN
>
Buscar Software
>
System
>
TERASOLUNA Framework
>
Foros
>
Open Discussion
>
TERASOLUNA Batch Framework for JavaのDBCollectorについて
TERASOLUNA Framework
Descripción
Project Summary
Developer Dashboard
Página Web
Developers
Image Gallery
List of RSS Feeds
Activity
Statistics
Historial
Descargas
List of Releases
Stats
Código Fuente
Code Repository list
Subversion
Ver Repositorio
Incidencia
Ticket List
Milestone List
Type List
Component List
List of frequently used tickets/RSS
Submit New Ticket
Documents
Wiki
FrontPage
Title index
Recent changes
Doc Mgr
List Docs
Communication
Foros
List of Forums
Open Discussion (1277)
Mailing Lists
list of ML
terasoluna-information
Noticias
Foros:
Open Discussion
(Thread #37300)
Return to Thread list
RSS
TERASOLUNA Batch Framework for JavaのDBCollectorについて (2015-11-18 10:23 by
ビン
#77204)
Responder
Crear incidencia
お疲れ様です。
TERASOLUNA Batch Framework for Java 3.x.xを利用しております。
BLogicの中に、DBCollectorを利用して、データを取得していますが、
問題は取得した結果が0件の判断できませんね。
QueryDAOを利用すれば判断できますが、DBCollectorを利用する場合、どのような判断できるのかお教えて頂けませんか。
宜しくお願い致します。
Responder al #77204
×
Sujeto
Body
Reply To Message #77204 > お疲れ様です。 > > TERASOLUNA Batch Framework for Java 3.x.xを利用しております。 > BLogicの中に、DBCollectorを利用して、データを取得していますが、 > 問題は取得した結果が0件の判断できませんね。 > QueryDAOを利用すれば判断できますが、DBCollectorを利用する場合、どのような判断できるのかお教えて頂けませんか。 > > 宜しくお願い致します。
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
Entrar
Nickname
Vista previa
Post
Cancelar
Re: TERASOLUNA Batch Framework for JavaのDBCollectorについて (2015-11-25 20:05 by
komodan
#77247)
Responder
Crear incidencia
利用されているTERASOLUNA Batch Framework for Java(以下、フレームワークと言います)のバージョンが3.2.0以降であれば、
Collector#hasNextを利用して取得した結果が0件かどうか判断できます。
(Collector#hasNextはCollector#nextで次に返却するデータが無い場合はfalseを返すメソッドです。)
■サンプルコード
(同梱されているチュートリアルのSMP001BLogicのコードを元にしています)
===
// コレクタ
Collector<NyusyukkinData> collector = new DBCollector<NyusyukkinData>(
this.queryRowHandleDAO, "SMP001.selectNyusyukkin", null);
try {
NyusyukkinData inputData = null;
if (!collector.hasNext()) {
// 取得したデータが0件だった場合の処理
return 0;
}
while (collector.hasNext()) {
// 取得したデータ1件ごとに対する処理
inputData = collector.next();
}
===
上記の手順は一例のご紹介になります。
拡張入力チェックエラーハンドラクラスを指定していた場合など、
他の条件によっては、別の方法をご紹介できると思います。
上記の方法ではやりたいことを満たせなかった場合は、
お手数ですが使用しているフレームワークの詳細なバージョンも添えて詳細にご質問いただけますでしょうか。
フレームワークの詳細なバージョンは、
お使いのterasoluna-batch-3.x.x.jarを解凍した中にあるMETA-INF/MANIFEST.MFファイルにある
Implementation-Versionの記述から確認できます。
よろしくお願いします。
Responder al
#77204
Responder al #77247
×
Sujeto
Body
Reply To Message #77247 > 利用されているTERASOLUNA Batch Framework for Java(以下、フレームワークと言います)のバージョンが3.2.0以降であれば、 > Collector#hasNextを利用して取得した結果が0件かどうか判断できます。 > (Collector#hasNextはCollector#nextで次に返却するデータが無い場合はfalseを返すメソッドです。) > > ■サンプルコード > (同梱されているチュートリアルのSMP001BLogicのコードを元にしています) > === > // コレクタ > Collector<NyusyukkinData> collector = new DBCollector<NyusyukkinData>( > this.queryRowHandleDAO, "SMP001.selectNyusyukkin", null); > try { > NyusyukkinData inputData = null; > if (!collector.hasNext()) { > // 取得したデータが0件だった場合の処理 > return 0; > } > > while (collector.hasNext()) { > // 取得したデータ1件ごとに対する処理 > inputData = collector.next(); > } > === > > 上記の手順は一例のご紹介になります。 > 拡張入力チェックエラーハンドラクラスを指定していた場合など、 > 他の条件によっては、別の方法をご紹介できると思います。 > > 上記の方法ではやりたいことを満たせなかった場合は、 > お手数ですが使用しているフレームワークの詳細なバージョンも添えて詳細にご質問いただけますでしょうか。 > > フレームワークの詳細なバージョンは、 > お使いのterasoluna-batch-3.x.x.jarを解凍した中にあるMETA-INF/MANIFEST.MFファイルにある > Implementation-Versionの記述から確認できます。 > > よろしくお願いします。
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
Entrar
Nickname
Vista previa
Post
Cancelar
Re: TERASOLUNA Batch Framework for JavaのDBCollectorについて (2015-11-26 18:41 by
ビン
#77257)
Responder
Crear incidencia
[Reply To Message #77247]
> 利用されているTERASOLUNA Batch Framework for Java(以下、フレームワークと言います)のバージョンが3.2.0以降であれば、
> Collector#hasNextを利用して取得した結果が0件かどうか判断できます。
> (Collector#hasNextはCollector#nextで次に返却するデータが無い場合はfalseを返すメソッドです。)
>
> ■サンプルコード
> (同梱されているチュートリアルのSMP001BLogicのコードを元にしています)
> ===
> // コレクタ
> Collector<NyusyukkinData> collector = new DBCollector<NyusyukkinData>(
> this.queryRowHandleDAO, "SMP001.selectNyusyukkin", null);
> try {
> NyusyukkinData inputData = null;
> if (!collector.hasNext()) {
> // 取得したデータが0件だった場合の処理
> return 0;
> }
>
> while (collector.hasNext()) {
> // 取得したデータ1件ごとに対する処理
> inputData = collector.next();
> }
> ===
>
> 上記の手順は一例のご紹介になります。
> 拡張入力チェックエラーハンドラクラスを指定していた場合など、
> 他の条件によっては、別の方法をご紹介できると思います。
>
> 上記の方法ではやりたいことを満たせなかった場合は、
> お手数ですが使用しているフレームワークの詳細なバージョンも添えて詳細にご質問いただけますでしょうか。
>
> フレームワークの詳細なバージョンは、
> お使いのterasoluna-batch-3.x.x.jarを解凍した中にあるMETA-INF/MANIFEST.MFファイルにある
> Implementation-Versionの記述から確認できます。
>
> よろしくお願いします。
ご回答、ありがとうございます。
> if (!collector.hasNext()) {
> // 取得したデータが0件だった場合の処理
> return 0;
> }
取得データは0件だけではなく、DBアクセスなどの例外もReturn 0となりますね。
Responder al
#77247
Responder al #77257
×
Sujeto
Body
Reply To Message #77257 > [Reply To Message #77247] > > 利用されているTERASOLUNA Batch Framework for Java(以下、フレームワークと言います)のバージョンが3.2.0以降であれば、 > > Collector#hasNextを利用して取得した結果が0件かどうか判断できます。 > > (Collector#hasNextはCollector#nextで次に返却するデータが無い場合はfalseを返すメソッドです。) > > > > ■サンプルコード > > (同梱されているチュートリアルのSMP001BLogicのコードを元にしています) > > === > > // コレクタ > > Collector<NyusyukkinData> collector = new DBCollector<NyusyukkinData>( > > this.queryRowHandleDAO, "SMP001.selectNyusyukkin", null); > > try { > > NyusyukkinData inputData = null; > > if (!collector.hasNext()) { > > // 取得したデータが0件だった場合の処理 > > return 0; > > } > > > > while (collector.hasNext()) { > > // 取得したデータ1件ごとに対する処理 > > inputData = collector.next(); > > } > > === > > > > 上記の手順は一例のご紹介になります。 > > 拡張入力チェックエラーハンドラクラスを指定していた場合など、 > > 他の条件によっては、別の方法をご紹介できると思います。 > > > > 上記の方法ではやりたいことを満たせなかった場合は、 > > お手数ですが使用しているフレームワークの詳細なバージョンも添えて詳細にご質問いただけますでしょうか。 > > > > フレームワークの詳細なバージョンは、 > > お使いのterasoluna-batch-3.x.x.jarを解凍した中にあるMETA-INF/MANIFEST.MFファイルにある > > Implementation-Versionの記述から確認できます。 > > > > よろしくお願いします。 > > ご回答、ありがとうございます。 > > > if (!collector.hasNext()) { > > // 取得したデータが0件だった場合の処理 > > return 0; > > } > 取得データは0件だけではなく、DBアクセスなどの例外もReturn 0となりますね。
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
Entrar
Nickname
Vista previa
Post
Cancelar
Re: TERASOLUNA Batch Framework for JavaのDBCollectorについて (2015-11-27 19:21 by
komodan
#77261)
Responder
Crear incidencia
書いていただいたとおり、例外が発生した際にもReturn 0となる(Collector#hasNextがfalseとなる)場合があります。
DBアクセス例外やデータの入力チェックエラー例外が発生した時に、
拡張例外ハンドラや入力チェックエラーハンドラを使って
CollectorExceptionHandlerStatus(ValidateErrorStatus)のSKIPやENDをreturnすると、例外が発生したデータを無視します。
例えば、例外発生データ1件だけがDBに格納されていたとして、例外ハンドラでSKIPやENDを設定する実装になっていると、
例外発生データ1件を無視するので、結果的に0件という扱いになってしまいます。
上記の状況にあてはまっていますでしょうか?
Responder al
#77257
Responder al #77261
×
Sujeto
Body
Reply To Message #77261 > 書いていただいたとおり、例外が発生した際にもReturn 0となる(Collector#hasNextがfalseとなる)場合があります。 > > DBアクセス例外やデータの入力チェックエラー例外が発生した時に、 > 拡張例外ハンドラや入力チェックエラーハンドラを使って > CollectorExceptionHandlerStatus(ValidateErrorStatus)のSKIPやENDをreturnすると、例外が発生したデータを無視します。 > > 例えば、例外発生データ1件だけがDBに格納されていたとして、例外ハンドラでSKIPやENDを設定する実装になっていると、 > 例外発生データ1件を無視するので、結果的に0件という扱いになってしまいます。 > > 上記の状況にあてはまっていますでしょうか?
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
Entrar
Nickname
Vista previa
Post
Cancelar