After reading the source code, the "problem" (in the last version) is on
the Cell classes.

It's appear that there are an infinit loop at this following method :
private TableContentValidationElement getContentValidationEle() throws
Exception {

To solve my current problem, i have sumply break the test condition   if
(/*validationName != null &&*/ false) { (L 2460) but I don't think that
it's a correct solution.





2014-10-13 16:39 GMT+02:00 SAUGET Marc <[email protected]>:

> Sorry, I have forget the follow information :
>
> I m working on Java 8 :
> openjdk version "1.8.0_05"
> OpenJDK Runtime Environment (build 1.8.0_05-b13)
> OpenJDK 64-Bit Server VM (build 25.5-b02, mixed mode)
>
> and I use this configuration to obtain your work :
>         <dependency>
>             <groupId>org.odftoolkit</groupId>
>             <artifactId>simple-odf</artifactId>
>             <version>0.6</version>
>         </dependency>
>
>
>         <dependency>
>             <groupId>org.odftoolkit</groupId>
>             <artifactId>odfdom-java</artifactId>
>             <version>0.8.7</version>
>         </dependency>
>
>
>
> 2014-10-13 16:36 GMT+02:00 SAUGET Marc <[email protected]>:
>
>> Hi
>>
>>
>> First, I want to thank you for your work.
>>
>> I m actually working on a small program  with the objective to write a
>> ods file with a lot of line ( > 20000).
>>
>>
>> My action are relatively simple , edit a cell and edit a multiple value
>> cell.
>> For the first action, I use with succes the setStringValue method and for
>> 2nd, I want to use the  setValidityList(listeP);
>>
>>
>> With this 2nd method, I can't write more than 15 lines and I don't
>> understand why and how  I resolv this problem.
>>
>> The process are the following, I have a list of element, and I iterate
>> on.
>>
>> The loop are write as this :
>>
>> for (Speciality spe : speToWrite) {
>>             table2.getCellByPosition(0,
>> compteur).setDisplayText(spe.getName());
>>             table2.getCellByPosition(1,
>> compteur).setDisplayText(spe.getFormeGalenique().getLabel());
>>             table2.getCellByPosition(2,
>> compteur).setDisplayText(spe.getQuantUnit().getLabel());
>>
>>             // List of admin modes label
>>             if (spe.getListeAdminMode() != null) {
>>                 List<String> listeP =
>> spe.getListeAdminMode().stream().map(AdminMode::getLabel).collect(toList());
>>
>>                 if (listeP.size() > 0) {
>>                     Cell cellule = table2.getCellByPosition(3, compteur);
>>                     cellule.setStringValue(listeP.get(0));
>>                     if (listeP.size() > 0) {
>>                         cellule.setValidityList(listeP); // -> problem
>> are here (XXX)
>>                     }
>>                 }
>>                 compteur++;
>>             }
>>
>>
>> If I comment the XXX line, i havent any problem and without the comment,
>> I block a the  11 iterations.  For information, the listeP have a size
>> between 1 or 5 elements.
>>
>>
>> Thanks for your help, any idea are welcome.
>>
>> Best regards
>>
>> (Sorry for my english)
>>
>>
>>
>>
>

Reply via email to