You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by "JiraUser (JIRA)" <ji...@apache.org> on 2013/11/10 02:13:17 UTC

[jira] [Created] (OPENMEETINGS-831) GeneratePDF.java - ext4 - fails to locate precise jodconverter path

JiraUser created OPENMEETINGS-831:
-------------------------------------

             Summary: GeneratePDF.java - ext4 - fails to locate precise jodconverter path 
                 Key: OPENMEETINGS-831
                 URL: https://issues.apache.org/jira/browse/OPENMEETINGS-831
             Project: Openmeetings
          Issue Type: Improvement
         Environment: EXT4 Filesystems
            Reporter: JiraUser


The method for finding the jodconverter path fails on (at least) EXT4 filesystems due to the way ext4 maps and traverses the tree- openmeetings cannot convert using jodconverter.

The fix is simple, please consider including this update in a binary release.

The code relates to GeneratePDF.java, line XX:

if (jar.startsWith("jodconverter")) {

To accomodate the ext4 filesystem, this should read:

if (jar.startsWith("jodconverter-cli")) {

On every successful openmeetings server (quite a few now, including RMTPS and OOo conversion :D thanks for all your time and amazing work!), the jodconverter command run executes the jodconverter-cli-2.2.2.jar file. On one machine, it attempts to execute the jodconverter-2.2.2.jar file. This seems to be because the loop, 

for (String jar : jodFolder.list(new FilenameFilter() {
				public boolean accept(File file1, String name) {
					return name.endsWith(".jar");
				}
			}))

seems to traverse the directory structure the same as ' find . ' or 'ls -U' in that folder.

This means that the last file in the array which matches the condition is jodconverter-2.2.2.jar (as the ext4 filesystem hash map/algorithm organises the file logically in the same place), not the jodconverter-cli-2.2.2.jar which seems to be needed.

Running the command with the -jar jodconverter-cli-2.2.2.jar instead of the  -jar jodconverter-cli-2.2.2.jar on the machine works perfectly- the file is converted and the expected output is seen.

To see the effect, consider the following two scenarios:
EXT3:
root@host1:~/stan# touch right
root@host1:~/stan# touch left
root@host1:~/stan# touch ever
root@host1:~/stan# touch tonight
root@host1:~/stan# find .
.
./right
./left
./ever
./tonight
root@host1:~/stan# find --version
find (GNU findutils) 4.4.2
root@host2:~/stan# touch right
root@host2:~/stan# touch left
root@host2:~/stan# touch ever 
root@host2:~/stan# touch tonight 
root@host2:~/stan# find .
.
./left
./tonight
./ever
./right
root@host2:~/stan# find --version
find (GNU findutils) 4.4.2

root@host2:~/stan# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian

root@host1:~/stan# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian

Thanks again for all your time and work- is it possible to download a copy of OpenMeetings 3



--
This message was sent by Atlassian JIRA
(v6.1#6144)