docverter-server 1.0.1-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (58) hide show
  1. data/.buildpacks +2 -0
  2. data/.gitignore +6 -0
  3. data/.vendor_urls +3 -0
  4. data/Gemfile +3 -0
  5. data/Gemfile.lock +55 -0
  6. data/LICENSE +67 -0
  7. data/Procfile +1 -0
  8. data/README.md +32 -0
  9. data/Rakefile +23 -0
  10. data/config.ru +3 -0
  11. data/doc/api.md +1664 -0
  12. data/doc/examples/html_to_encrypted_pdf/convert.sh +16 -0
  13. data/doc/examples/html_to_encrypted_pdf/imfeldoublepica.ttf +0 -0
  14. data/doc/examples/html_to_encrypted_pdf/input.html +27 -0
  15. data/doc/examples/html_to_encrypted_pdf/marcellus.ttf +0 -0
  16. data/doc/examples/html_to_encrypted_pdf/stylesheet.css +22 -0
  17. data/doc/examples/html_to_pdf/convert.sh +16 -0
  18. data/doc/examples/html_to_pdf/imfeldoublepica.ttf +0 -0
  19. data/doc/examples/html_to_pdf/input.html +27 -0
  20. data/doc/examples/html_to_pdf/marcellus.ttf +0 -0
  21. data/doc/examples/html_to_pdf/stylesheet.css +22 -0
  22. data/doc/examples/markdown_to_epub/chapter1.md +11 -0
  23. data/doc/examples/markdown_to_epub/chapter2.md +10 -0
  24. data/doc/examples/markdown_to_epub/convert.sh +20 -0
  25. data/doc/examples/markdown_to_epub/document-open.png +0 -0
  26. data/doc/examples/markdown_to_epub/markdown_to_epub.epub +241 -0
  27. data/doc/examples/markdown_to_epub/markdown_to_epub.epub.html +251 -0
  28. data/doc/examples/markdown_to_epub/metadata.xml +2 -0
  29. data/doc/examples/markdown_to_epub/stylesheet.css +216 -0
  30. data/doc/examples/markdown_to_epub/title.txt +2 -0
  31. data/doc/examples/markdown_to_mobi/chapter1.md +11 -0
  32. data/doc/examples/markdown_to_mobi/chapter2.md +10 -0
  33. data/doc/examples/markdown_to_mobi/convert.sh +20 -0
  34. data/doc/examples/markdown_to_mobi/document-open.png +0 -0
  35. data/doc/examples/markdown_to_mobi/metadata.xml +2 -0
  36. data/doc/examples/markdown_to_mobi/stylesheet.css +216 -0
  37. data/doc/examples/markdown_to_mobi/title.txt +2 -0
  38. data/doc/examples/markdown_to_pdf/chapter1.md +11 -0
  39. data/doc/examples/markdown_to_pdf/chapter2.md +10 -0
  40. data/doc/examples/markdown_to_pdf/convert.sh +18 -0
  41. data/doc/examples/markdown_to_pdf/imfeldoublepica.ttf +0 -0
  42. data/doc/examples/markdown_to_pdf/manifest.yml +8 -0
  43. data/doc/examples/markdown_to_pdf/marcellus.ttf +0 -0
  44. data/doc/examples/markdown_to_pdf/stylesheet.css +22 -0
  45. data/docverter.gemspec +28 -0
  46. data/lib/docverter-server/app.rb +50 -0
  47. data/lib/docverter-server/conversion.rb +38 -0
  48. data/lib/docverter-server/conversion_types.rb +59 -0
  49. data/lib/docverter-server/jars/bcprov-ext-jdk15-1.43.jar +0 -0
  50. data/lib/docverter-server/jars/htmlcleaner-2.2.jar +0 -0
  51. data/lib/docverter-server/manifest.rb +107 -0
  52. data/lib/docverter-server/runner/base.rb +36 -0
  53. data/lib/docverter-server/runner/calibre.rb +10 -0
  54. data/lib/docverter-server/runner/pandoc.rb +18 -0
  55. data/lib/docverter-server/runner/pdf.rb +91 -0
  56. data/lib/docverter-server/version.rb +3 -0
  57. data/lib/docverter-server.rb +11 -0
  58. metadata +230 -0
@@ -0,0 +1,16 @@
1
+ #!/bin/bash
2
+
3
+ if [[ "$DOCVERTER_API_URL" == "" ]]; then
4
+ export DOCVERTER_API_URL=http://localhost:9595/convert
5
+ fi
6
+
7
+ curl --form from=html \
8
+ --form to=pdf \
9
+ --form test_mode=true \
10
+ --form pdf_username=test \
11
+ --form pdf_password=some_password \
12
+ --form input_files[]=@input.html \
13
+ --form other_files[]=@stylesheet.css \
14
+ --form other_files[]=@marcellus.ttf \
15
+ --form other_files[]=@imfeldoublepica.ttf \
16
+ $DOCVERTER_API_URL > html_to_encrypted_pdf.pdf
@@ -0,0 +1,27 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
+ <html>
4
+ <head>
5
+ <title>Example Document</title>
6
+ <link rel="stylesheet" media="all" type="text/css" href="stylesheet.css" />
7
+ </head>
8
+ <body>
9
+ <h1>Header One</h1>
10
+ <p>
11
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque id lacus metus. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Aenean auctor dui dolor. Aliquam hendrerit nisl quis enim sollicitudin eleifend in vitae tortor. Fusce lectus tortor, mattis et suscipit eget, faucibus eget leo. Nullam consequat mollis neque non porttitor. Nulla tristique erat quis dolor lobortis a commodo dui congue. Nulla orci purus, rhoncus non venenatis vel, semper sed ante.
12
+ </p>
13
+ <p>
14
+ Morbi egestas purus id odio vehicula posuere. Etiam at ipsum vel nunc pulvinar egestas. Quisque mattis egestas orci, lacinia malesuada nulla lobortis in. Nullam ac mi eu purus viverra convallis. Maecenas tristique pulvinar ullamcorper. Maecenas non justo ac nisi vestibulum fermentum. Proin ultrices elit sit amet est ultrices id sagittis orci interdum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Fusce adipiscing hendrerit volutpat.
15
+ </p>
16
+ <h2>Header Two</h2>
17
+ <p>
18
+ Mauris a metus mi. Integer in arcu nisi, sit amet vestibulum ante. Suspendisse potenti. Mauris porta mollis adipiscing. Sed vulputate, risus sollicitudin lacinia tincidunt, purus enim elementum risus, non sagittis enim metus et arcu. Mauris porta nunc et nisl vestibulum sed adipiscing lacus dignissim. Quisque eget sem vel libero congue tempor. Curabitur bibendum dolor eget augue dictum interdum. Fusce neque dui, vulputate at placerat quis, volutpat sed massa. Donec et nunc sed eros tempus posuere. Nunc tortor erat, tempus at mollis consectetur, ultrices vel magna. Suspendisse tempor vehicula malesuada. Vivamus felis nisl, sollicitudin vitae cursus eu, pharetra vel felis. Vestibulum hendrerit porttitor pulvinar. Aenean accumsan volutpat velit, at elementum tellus congue in. Maecenas venenatis augue vel orci accumsan pretium.
19
+ </p>
20
+ <p>
21
+ Aenean tortor erat, sollicitudin quis aliquam vel, aliquet vel elit. Duis tincidunt, sapien in venenatis lobortis, massa arcu consequat leo, ac volutpat tellus felis eu nulla. Nam tincidunt vulputate dui sit amet pellentesque. Nullam lobortis molestie tellus, vitae facilisis tellus mollis et. Etiam sed accumsan turpis. In vel arcu vitae ligula viverra porta. Nulla vitae est tortor. Phasellus viverra laoreet orci vel bibendum. Duis dignissim lorem nec leo vehicula ut eleifend felis imperdiet. Donec venenatis accumsan tortor, ut faucibus ante placerat eu. Pellentesque risus urna, varius eu elementum et, euismod sit amet ligula. Vivamus vestibulum gravida diam, id euismod libero mattis ornare. Aliquam non eros eu nisl sodales rutrum sit amet in tortor. Etiam ut auctor tellus. Nullam mollis blandit scelerisque. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae;
22
+ </p>
23
+ <p>
24
+ Aenean elementum placerat rutrum. Donec tempor nulla quis mi sollicitudin porta. Suspendisse venenatis urna at tortor dignissim ultricies. Praesent arcu velit, porta non dictum porttitor, pulvinar eu felis. Fusce volutpat vehicula hendrerit. Suspendisse faucibus turpis sed dolor tincidunt mattis. Ut vel neque et nisi consectetur malesuada. Vestibulum purus tellus, pellentesque sed blandit vitae, dictum eu enim. Quisque blandit lorem quis lacus viverra pretium. In euismod est eget nisi porttitor eget porta elit tristique.
25
+ </p>
26
+ </body>
27
+ </html>
@@ -0,0 +1,22 @@
1
+ @font-face {
2
+ font-family: 'Marcellus';
3
+ font-style: normal;
4
+ font-weight: 400;
5
+ src: url(marcellus.ttf);
6
+ -fs-pdf-font-embed: embed;
7
+ -fs-pdf-font-encoding: Identity-H;
8
+ }
9
+ @font-face {
10
+ font-family: 'IM FELL Double Pica';
11
+ font-style: normal;
12
+ font-weight: 400;
13
+ src: url(imfeldoublepica.ttf);
14
+ -fs-pdf-font-embed: embed;
15
+ -fs-pdf-font-encoding: Identity-H;
16
+ }
17
+ h1,h2 {
18
+ font-family: 'Marcellus';
19
+ }
20
+ p {
21
+ font-family: 'IM FELL Double Pica';
22
+ }
@@ -0,0 +1,16 @@
1
+ #!/bin/bash
2
+
3
+ if [[ "$DOCVERTER_API_URL" == "" ]]; then
4
+ export DOCVERTER_API_URL=http://localhost:9595/convert
5
+ fi
6
+
7
+ curl --form from=html \
8
+ --form to=pdf \
9
+ --form test_mode=true \
10
+ --form input_files[]=@input.html \
11
+ --form other_files[]=@stylesheet.css \
12
+ --form other_files[]=@marcellus.ttf \
13
+ --form other_files[]=@imfeldoublepica.ttf \
14
+ $DOCVERTER_API_URL > html_to_pdf.pdf
15
+
16
+ echo html_to_pdf.pdf
@@ -0,0 +1,27 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
+ <html>
4
+ <head>
5
+ <title>Example Document</title>
6
+ <link rel="stylesheet" media="all" type="text/css" href="stylesheet.css" />
7
+ </head>
8
+ <body>
9
+ <h1>Header One</h1>
10
+ <p>
11
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque id lacus metus. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Aenean auctor dui dolor. Aliquam hendrerit nisl quis enim sollicitudin eleifend in vitae tortor. Fusce lectus tortor, mattis et suscipit eget, faucibus eget leo. Nullam consequat mollis neque non porttitor. Nulla tristique erat quis dolor lobortis a commodo dui congue. Nulla orci purus, rhoncus non venenatis vel, semper sed ante.
12
+ </p>
13
+ <p>
14
+ Morbi egestas purus id odio vehicula posuere. Etiam at ipsum vel nunc pulvinar egestas. Quisque mattis egestas orci, lacinia malesuada nulla lobortis in. Nullam ac mi eu purus viverra convallis. Maecenas tristique pulvinar ullamcorper. Maecenas non justo ac nisi vestibulum fermentum. Proin ultrices elit sit amet est ultrices id sagittis orci interdum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Fusce adipiscing hendrerit volutpat.
15
+ </p>
16
+ <h2>Header Two</h2>
17
+ <p>
18
+ Mauris a metus mi. Integer in arcu nisi, sit amet vestibulum ante. Suspendisse potenti. Mauris porta mollis adipiscing. Sed vulputate, risus sollicitudin lacinia tincidunt, purus enim elementum risus, non sagittis enim metus et arcu. Mauris porta nunc et nisl vestibulum sed adipiscing lacus dignissim. Quisque eget sem vel libero congue tempor. Curabitur bibendum dolor eget augue dictum interdum. Fusce neque dui, vulputate at placerat quis, volutpat sed massa. Donec et nunc sed eros tempus posuere. Nunc tortor erat, tempus at mollis consectetur, ultrices vel magna. Suspendisse tempor vehicula malesuada. Vivamus felis nisl, sollicitudin vitae cursus eu, pharetra vel felis. Vestibulum hendrerit porttitor pulvinar. Aenean accumsan volutpat velit, at elementum tellus congue in. Maecenas venenatis augue vel orci accumsan pretium.
19
+ </p>
20
+ <p>
21
+ Aenean tortor erat, sollicitudin quis aliquam vel, aliquet vel elit. Duis tincidunt, sapien in venenatis lobortis, massa arcu consequat leo, ac volutpat tellus felis eu nulla. Nam tincidunt vulputate dui sit amet pellentesque. Nullam lobortis molestie tellus, vitae facilisis tellus mollis et. Etiam sed accumsan turpis. In vel arcu vitae ligula viverra porta. Nulla vitae est tortor. Phasellus viverra laoreet orci vel bibendum. Duis dignissim lorem nec leo vehicula ut eleifend felis imperdiet. Donec venenatis accumsan tortor, ut faucibus ante placerat eu. Pellentesque risus urna, varius eu elementum et, euismod sit amet ligula. Vivamus vestibulum gravida diam, id euismod libero mattis ornare. Aliquam non eros eu nisl sodales rutrum sit amet in tortor. Etiam ut auctor tellus. Nullam mollis blandit scelerisque. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae;
22
+ </p>
23
+ <p>
24
+ Aenean elementum placerat rutrum. Donec tempor nulla quis mi sollicitudin porta. Suspendisse venenatis urna at tortor dignissim ultricies. Praesent arcu velit, porta non dictum porttitor, pulvinar eu felis. Fusce volutpat vehicula hendrerit. Suspendisse faucibus turpis sed dolor tincidunt mattis. Ut vel neque et nisi consectetur malesuada. Vestibulum purus tellus, pellentesque sed blandit vitae, dictum eu enim. Quisque blandit lorem quis lacus viverra pretium. In euismod est eget nisi porttitor eget porta elit tristique.
25
+ </p>
26
+ </body>
27
+ </html>
@@ -0,0 +1,22 @@
1
+ @font-face {
2
+ font-family: 'Marcellus';
3
+ font-style: normal;
4
+ font-weight: 400;
5
+ src: url(marcellus.ttf);
6
+ -fs-pdf-font-embed: embed;
7
+ -fs-pdf-font-encoding: Identity-H;
8
+ }
9
+ @font-face {
10
+ font-family: 'IM FELL Double Pica';
11
+ font-style: normal;
12
+ font-weight: 400;
13
+ src: url(imfeldoublepica.ttf);
14
+ -fs-pdf-font-embed: embed;
15
+ -fs-pdf-font-encoding: Identity-H;
16
+ }
17
+ h1,h2 {
18
+ font-family: 'Marcellus';
19
+ }
20
+ p {
21
+ font-family: 'IM FELL Double Pica';
22
+ }
@@ -0,0 +1,11 @@
1
+ # Chapter 1
2
+
3
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed rutrum, nisl in malesuada mattis, lorem ante rutrum turpis, vitae aliquam enim nunc ut leo. Vivamus ultrices, turpis sit amet vehicula rhoncus, nulla risus placerat libero, molestie vehicula purus dolor at erat. Etiam ac ligula nec justo ornare interdum at in magna. Curabitur tempus nibh in erat lacinia sit amet facilisis elit mollis. Quisque elementum accumsan convallis. Maecenas ut orci ac odio suscipit convallis at ac erat. Sed at suscipit orci. Aliquam sed interdum felis. Sed pretium facilisis aliquet. In tellus dolor, scelerisque a aliquam non, faucibus et metus. Cras pellentesque aliquam metus rutrum convallis. Vestibulum et leo vitae purus accumsan varius. Donec quis luctus enim. Mauris lacus odio, molestie vitae suscipit at, porta sed turpis. Sed eros dui, aliquet at varius vel, ultricies ac augue.
4
+
5
+ Nullam quis justo ac dui fringilla feugiat sed gravida nisl. Nam id egestas nisl. Pellentesque sodales nibh et eros pretium id posuere lectus pellentesque. Nulla pretium interdum porta. Nulla a quam eget risus pulvinar porta sit amet vitae leo. Aliquam scelerisque ornare libero tristique varius. Suspendisse consectetur vulputate ipsum a eleifend. Nullam a neque felis, consectetur vehicula ante. Etiam varius libero in sem tristique et sagittis quam gravida. Aenean eleifend, elit a porttitor dignissim, dui elit rutrum quam, in malesuada massa felis vitae sapien. Nulla convallis viverra mauris a condimentum. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae;
6
+
7
+ Etiam sed laoreet eros. Duis porttitor magna dolor, sed vehicula odio. Pellentesque turpis purus, pulvinar commodo luctus non, congue at turpis. Etiam vehicula elit pulvinar sem vehicula vel varius ipsum hendrerit. Donec odio dolor, ornare non volutpat id, bibendum sed odio. Aliquam ante risus, tristique vitae condimentum quis, posuere viverra diam. Etiam interdum accumsan tellus, ut mollis lectus fringilla consectetur. Nullam porttitor, dui quis consequat suscipit, metus tellus consequat ante, a sodales lorem nisl eu odio. Nullam elementum consequat lacinia. Nunc in nulla purus. Duis ut lacus quis justo tempor iaculis. Nunc egestas urna eu lacus euismod eu tempor eros venenatis. Curabitur imperdiet dui vel turpis pretium eleifend. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi facilisis dignissim turpis et rutrum.
8
+
9
+ Suspendisse posuere congue ante vitae tristique. Sed pretium interdum nulla, sed rutrum justo porta nec. Donec justo dolor, faucibus quis interdum vel, imperdiet varius est. Vivamus ullamcorper, mi ut aliquet fermentum, turpis leo blandit dolor, sed venenatis dui libero vehicula enim. Fusce malesuada vehicula velit, in ullamcorper mauris fermentum mattis. Duis vitae libero mauris, et consequat arcu. Ut a orci sem. Donec dui neque, placerat nec pharetra sit amet, aliquam nec erat. Curabitur rhoncus, sapien ac molestie bibendum, nunc purus cursus risus, tincidunt semper erat justo vel lectus. Fusce vulputate tempor malesuada. Maecenas in porta eros.
10
+
11
+ Mauris eget lectus neque. Nullam elementum felis nec turpis gravida sed varius ipsum lobortis. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Pellentesque aliquam luctus nisi, eget sollicitudin neque malesuada vel. Aliquam quis nulla nulla. Quisque tincidunt, augue et vulputate mollis, libero nibh imperdiet erat, et interdum erat orci sit amet libero. Nullam convallis gravida commodo. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.
@@ -0,0 +1,10 @@
1
+ # Chapter 2
2
+
3
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum ut suscipit nibh. Nunc in libero arcu. Integer eu libero quam, nec pretium odio. Sed egestas arcu eget erat convallis vitae pellentesque mauris aliquam. Pellentesque posuere, elit a ullamcorper tincidunt, dolor enim posuere urna, non consequat ligula erat placerat augue. Vivamus eu nisl libero. Nullam consectetur pellentesque turpis, sed lobortis magna cursus facilisis. Aliquam fermentum auctor varius. Ut ligula velit, luctus sed venenatis at, accumsan a dui. Donec sodales mi eget massa molestie at cursus velit interdum.
4
+
5
+ Sed risus orci, suscipit pellentesque feugiat nec, pulvinar eget tellus. Cras vitae condimentum nulla. Proin in enim sem. Aliquam erat volutpat. Cras consequat malesuada semper. Nulla ornare nisl quis dolor faucibus ut iaculis justo elementum. Suspendisse interdum ultricies velit, id convallis lorem lacinia quis. Suspendisse potenti. Sed elit nulla, feugiat vel dapibus non, laoreet at justo. Vestibulum eget dui odio, ut venenatis sapien. Donec ac purus quam, id vestibulum diam. Proin augue turpis, laoreet eu placerat at, fringilla in orci. Etiam diam magna, luctus a pellentesque eu, convallis id enim. Pellentesque hendrerit urna eu urna laoreet vel iaculis arcu vestibulum.
6
+
7
+ Suspendisse placerat rutrum blandit. Proin a lacus lectus. Aenean vestibulum mi sit amet metus porttitor sed ullamcorper orci adipiscing. Proin ipsum ligula, rhoncus a aliquet nec, rutrum vel tortor. Phasellus fermentum lacinia nunc, sed porta orci aliquet eu. In sapien velit, lacinia eget vulputate ut, egestas et est. Vestibulum odio eros, blandit ac accumsan at, fringilla eu velit. Sed dignissim sodales condimentum. Vivamus at massa metus. Duis imperdiet ultrices quam sed pretium.
8
+
9
+ Fusce ut tortor eget lectus rutrum mattis quis in leo. Duis id risus nec justo hendrerit consequat quis quis sem. Aenean sollicitudin bibendum elit vel sollicitudin. Cras ipsum odio, bibendum porttitor luctus a, vulputate et dolor. Donec faucibus urna mattis tortor convallis vel ornare magna vestibulum. Sed pellentesque elit vitae ipsum dapibus in hendrerit mi lobortis. Suspendisse nec sapien vitae tellus sollicitudin vulputate. Sed lacinia, arcu et accumsan placerat, leo justo ultricies diam, vel semper dolor nulla ut nisi. Sed volutpat ultrices erat, a consequat est consectetur sed. Donec pharetra odio sit amet ligula lacinia in consequat neque pellentesque. Pellentesque tortor diam, tempor sit amet semper in, semper a libero. Integer sodales, nisl non varius porttitor, arcu magna congue velit, sed ultricies elit quam non eros.
10
+
@@ -0,0 +1,20 @@
1
+ #!/bin/bash
2
+
3
+ if [[ "$DOCVERTER_API_URL" == "" ]]; then
4
+ export DOCVERTER_API_URL=http://localhost:9595/convert
5
+ fi
6
+
7
+ curl --form from=markdown \
8
+ --form to=epub \
9
+ --form test_mode=true \
10
+ --form input_files[]=@chapter1.md \
11
+ --form input_files[]=@chapter2.md \
12
+ --form other_files[]=@metadata.xml \
13
+ --form other_files[]=@document-open.png \
14
+ --form other_files[]=@stylesheet.css \
15
+ --form epub_metadata=metadata.xml \
16
+ --form epub_cover_image=document-open.png \
17
+ --form epub_stylesheet=stylesheet.css \
18
+ $DOCVERTER_API_URL > markdown_to_epub.epub
19
+
20
+ echo markdown_to_epub.epub
@@ -0,0 +1,241 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <title>Action Controller: Exception caught</title>
6
+ <style>
7
+ body { background-color: #fff; color: #333; }
8
+
9
+ body, p, ol, ul, td {
10
+ font-family: helvetica, verdana, arial, sans-serif;
11
+ font-size: 13px;
12
+ line-height: 18px;
13
+ }
14
+
15
+ pre {
16
+ background-color: #eee;
17
+ padding: 10px;
18
+ font-size: 11px;
19
+ }
20
+
21
+ a { color: #000; }
22
+ a:visited { color: #666; }
23
+ a:hover { color: #fff; background-color:#000; }
24
+ </style>
25
+ </head>
26
+ <body>
27
+
28
+ <h1>
29
+ NoMethodError
30
+ in V1::ConversionsController#advanced_conversion
31
+ </h1>
32
+ <pre>undefined method `create' for ConversionJob:Class</pre>
33
+
34
+
35
+ <p><code>Rails.root: /Users/peter/devel/docverter</code></p>
36
+
37
+ <div id="traces">
38
+ <a href="#" onclick="document.getElementById('Framework-Trace').style.display='none';document.getElementById('Full-Trace').style.display='none';document.getElementById('Application-Trace').style.display='block';; return false;">Application Trace</a> |
39
+ <a href="#" onclick="document.getElementById('Application-Trace').style.display='none';document.getElementById('Full-Trace').style.display='none';document.getElementById('Framework-Trace').style.display='block';; return false;">Framework Trace</a> |
40
+ <a href="#" onclick="document.getElementById('Application-Trace').style.display='none';document.getElementById('Framework-Trace').style.display='none';document.getElementById('Full-Trace').style.display='block';; return false;">Full Trace</a>
41
+
42
+ <div id="Application-Trace" style="display: block;">
43
+ <pre><code>app/models/conversion.rb:13:in `queue!'
44
+ app/controllers/v1/conversions_controller.rb:124:in `advanced_conversion'</code></pre>
45
+ </div>
46
+ <div id="Framework-Trace" style="display: none;">
47
+ <pre><code>org/jruby/RubyBasicObject.java:1667:in `__send__'
48
+ org/jruby/RubyKernel.java:2077:in `send'
49
+ actionpack (3.1.1) lib/action_controller/metal/implicit_render.rb:4:in `send_action'
50
+ actionpack (3.1.1) lib/abstract_controller/base.rb:167:in `process_action'
51
+ actionpack (3.1.1) lib/action_controller/metal/rendering.rb:10:in `process_action'
52
+ actionpack (3.1.1) lib/abstract_controller/callbacks.rb:18:in `process_action'
53
+ activesupport (3.1.1) lib/active_support/callbacks.rb:428:in `_run__781438020__process_action__550075635__callbacks'
54
+ org/jruby/RubyBasicObject.java:1667:in `__send__'
55
+ org/jruby/RubyKernel.java:2077:in `send'
56
+ activesupport (3.1.1) lib/active_support/callbacks.rb:401:in `_run_process_action_callbacks'
57
+ org/jruby/RubyBasicObject.java:1673:in `__send__'
58
+ org/jruby/RubyKernel.java:2081:in `send'
59
+ activesupport (3.1.1) lib/active_support/callbacks.rb:81:in `run_callbacks'
60
+ actionpack (3.1.1) lib/abstract_controller/callbacks.rb:17:in `process_action'
61
+ actionpack (3.1.1) lib/action_controller/metal/rescue.rb:17:in `process_action'
62
+ actionpack (3.1.1) lib/action_controller/metal/instrumentation.rb:30:in `process_action'
63
+ activesupport (3.1.1) lib/active_support/notifications.rb:53:in `instrument'
64
+ activesupport (3.1.1) lib/active_support/notifications/instrumenter.rb:21:in `instrument'
65
+ activesupport (3.1.1) lib/active_support/notifications.rb:53:in `instrument'
66
+ actionpack (3.1.1) lib/action_controller/metal/instrumentation.rb:29:in `process_action'
67
+ actionpack (3.1.1) lib/action_controller/metal/params_wrapper.rb:201:in `process_action'
68
+ activerecord (3.1.1) lib/active_record/railties/controller_runtime.rb:18:in `process_action'
69
+ newrelic_rpm (3.4.1) lib/new_relic/agent/instrumentation/rails3/action_controller.rb:34:in `process_action'
70
+ newrelic_rpm (3.4.1) lib/new_relic/agent/instrumentation/controller_instrumentation.rb:262:in `perform_action_with_newrelic_trace'
71
+ newrelic_rpm (3.4.1) lib/new_relic/agent/method_tracer.rb:242:in `trace_execution_scoped'
72
+ newrelic_rpm (3.4.1) lib/new_relic/agent/instrumentation/controller_instrumentation.rb:257:in `perform_action_with_newrelic_trace'
73
+ newrelic_rpm (3.4.1) lib/new_relic/agent/instrumentation/rails3/action_controller.rb:33:in `process_action'
74
+ actionpack (3.1.1) lib/abstract_controller/base.rb:121:in `process'
75
+ actionpack (3.1.1) lib/abstract_controller/rendering.rb:45:in `process'
76
+ actionpack (3.1.1) lib/action_controller/metal.rb:193:in `dispatch'
77
+ actionpack (3.1.1) lib/action_controller/metal/rack_delegation.rb:14:in `dispatch'
78
+ actionpack (3.1.1) lib/action_controller/metal.rb:236:in `action'
79
+ org/jruby/RubyProc.java:249:in `call'
80
+ actionpack (3.1.1) lib/action_dispatch/routing/route_set.rb:65:in `dispatch'
81
+ actionpack (3.1.1) lib/action_dispatch/routing/route_set.rb:29:in `call'
82
+ rack-mount (0.8.3) lib/rack/mount/route_set.rb:152:in `call'
83
+ rack-mount (0.8.3) lib/rack/mount/code_generation.rb:114:in `recognize'
84
+ rack-mount (0.8.3) lib/rack/mount/code_generation.rb:87:in `optimized_each'
85
+ rack-mount (0.8.3) lib/rack/mount/code_generation.rb:113:in `recognize'
86
+ rack-mount (0.8.3) lib/rack/mount/route_set.rb:141:in `call'
87
+ actionpack (3.1.1) lib/action_dispatch/routing/route_set.rb:532:in `call'
88
+ omniauth (1.1.1) lib/omniauth/strategy.rb:177:in `call!'
89
+ omniauth (1.1.1) lib/omniauth/strategy.rb:157:in `call'
90
+ omniauth (1.1.1) lib/omniauth/builder.rb:48:in `call'
91
+ newrelic_rpm (3.4.1) lib/new_relic/rack/browser_monitoring.rb:12:in `call'
92
+ newrelic_rpm (3.4.1) lib/new_relic/rack/developer_mode.rb:24:in `call'
93
+ warden (1.2.1) lib/warden/manager.rb:35:in `call'
94
+ org/jruby/RubyKernel.java:1173:in `catch'
95
+ warden (1.2.1) lib/warden/manager.rb:34:in `call'
96
+ versionist (0.3.1) lib/versionist/middleware.rb:36:in `_call'
97
+ versionist (0.3.1) lib/versionist/middleware.rb:17:in `call'
98
+ actionpack (3.1.1) lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
99
+ rack (1.3.6) lib/rack/etag.rb:23:in `call'
100
+ rack (1.3.6) lib/rack/conditionalget.rb:35:in `call'
101
+ actionpack (3.1.1) lib/action_dispatch/middleware/head.rb:14:in `call'
102
+ actionpack (3.1.1) lib/action_dispatch/middleware/params_parser.rb:21:in `call'
103
+ actionpack (3.1.1) lib/action_dispatch/middleware/flash.rb:243:in `call'
104
+ rack (1.3.6) lib/rack/session/abstract/id.rb:195:in `context'
105
+ rack (1.3.6) lib/rack/session/abstract/id.rb:190:in `call'
106
+ actionpack (3.1.1) lib/action_dispatch/middleware/cookies.rb:331:in `call'
107
+ activerecord (3.1.1) lib/active_record/query_cache.rb:62:in `call'
108
+ activerecord (3.1.1) lib/active_record/connection_adapters/abstract/connection_pool.rb:477:in `call'
109
+ actionpack (3.1.1) lib/action_dispatch/middleware/callbacks.rb:29:in `call'
110
+ activesupport (3.1.1) lib/active_support/callbacks.rb:407:in `_run_call_callbacks'
111
+ org/jruby/RubyBasicObject.java:1667:in `__send__'
112
+ org/jruby/RubyKernel.java:2077:in `send'
113
+ activesupport (3.1.1) lib/active_support/callbacks.rb:81:in `run_callbacks'
114
+ actionpack (3.1.1) lib/action_dispatch/middleware/callbacks.rb:28:in `call'
115
+ actionpack (3.1.1) lib/action_dispatch/middleware/reloader.rb:68:in `call'
116
+ rack (1.3.6) lib/rack/sendfile.rb:101:in `call'
117
+ actionpack (3.1.1) lib/action_dispatch/middleware/remote_ip.rb:48:in `call'
118
+ actionpack (3.1.1) lib/action_dispatch/middleware/show_exceptions.rb:47:in `call'
119
+ railties (3.1.1) lib/rails/rack/logger.rb:13:in `call'
120
+ rack (1.3.6) lib/rack/methodoverride.rb:24:in `call'
121
+ rack (1.3.6) lib/rack/runtime.rb:17:in `call'
122
+ activesupport (3.1.1) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
123
+ rack (1.3.6) lib/rack/lock.rb:15:in `call'
124
+ actionpack (3.1.1) lib/action_dispatch/middleware/static.rb:53:in `call'
125
+ railties (3.1.1) lib/rails/engine.rb:456:in `call'
126
+ file:jruby-rack (1.1.10) lib/jruby-rack-1.1.10.jar!/rack/handler/servlet.rb:22:in `call'</code></pre>
127
+ </div>
128
+ <div id="Full-Trace" style="display: none;">
129
+ <pre><code>app/models/conversion.rb:13:in `queue!'
130
+ app/controllers/v1/conversions_controller.rb:124:in `advanced_conversion'
131
+ org/jruby/RubyBasicObject.java:1667:in `__send__'
132
+ org/jruby/RubyKernel.java:2077:in `send'
133
+ actionpack (3.1.1) lib/action_controller/metal/implicit_render.rb:4:in `send_action'
134
+ actionpack (3.1.1) lib/abstract_controller/base.rb:167:in `process_action'
135
+ actionpack (3.1.1) lib/action_controller/metal/rendering.rb:10:in `process_action'
136
+ actionpack (3.1.1) lib/abstract_controller/callbacks.rb:18:in `process_action'
137
+ activesupport (3.1.1) lib/active_support/callbacks.rb:428:in `_run__781438020__process_action__550075635__callbacks'
138
+ org/jruby/RubyBasicObject.java:1667:in `__send__'
139
+ org/jruby/RubyKernel.java:2077:in `send'
140
+ activesupport (3.1.1) lib/active_support/callbacks.rb:401:in `_run_process_action_callbacks'
141
+ org/jruby/RubyBasicObject.java:1673:in `__send__'
142
+ org/jruby/RubyKernel.java:2081:in `send'
143
+ activesupport (3.1.1) lib/active_support/callbacks.rb:81:in `run_callbacks'
144
+ actionpack (3.1.1) lib/abstract_controller/callbacks.rb:17:in `process_action'
145
+ actionpack (3.1.1) lib/action_controller/metal/rescue.rb:17:in `process_action'
146
+ actionpack (3.1.1) lib/action_controller/metal/instrumentation.rb:30:in `process_action'
147
+ activesupport (3.1.1) lib/active_support/notifications.rb:53:in `instrument'
148
+ activesupport (3.1.1) lib/active_support/notifications/instrumenter.rb:21:in `instrument'
149
+ activesupport (3.1.1) lib/active_support/notifications.rb:53:in `instrument'
150
+ actionpack (3.1.1) lib/action_controller/metal/instrumentation.rb:29:in `process_action'
151
+ actionpack (3.1.1) lib/action_controller/metal/params_wrapper.rb:201:in `process_action'
152
+ activerecord (3.1.1) lib/active_record/railties/controller_runtime.rb:18:in `process_action'
153
+ newrelic_rpm (3.4.1) lib/new_relic/agent/instrumentation/rails3/action_controller.rb:34:in `process_action'
154
+ newrelic_rpm (3.4.1) lib/new_relic/agent/instrumentation/controller_instrumentation.rb:262:in `perform_action_with_newrelic_trace'
155
+ newrelic_rpm (3.4.1) lib/new_relic/agent/method_tracer.rb:242:in `trace_execution_scoped'
156
+ newrelic_rpm (3.4.1) lib/new_relic/agent/instrumentation/controller_instrumentation.rb:257:in `perform_action_with_newrelic_trace'
157
+ newrelic_rpm (3.4.1) lib/new_relic/agent/instrumentation/rails3/action_controller.rb:33:in `process_action'
158
+ actionpack (3.1.1) lib/abstract_controller/base.rb:121:in `process'
159
+ actionpack (3.1.1) lib/abstract_controller/rendering.rb:45:in `process'
160
+ actionpack (3.1.1) lib/action_controller/metal.rb:193:in `dispatch'
161
+ actionpack (3.1.1) lib/action_controller/metal/rack_delegation.rb:14:in `dispatch'
162
+ actionpack (3.1.1) lib/action_controller/metal.rb:236:in `action'
163
+ org/jruby/RubyProc.java:249:in `call'
164
+ actionpack (3.1.1) lib/action_dispatch/routing/route_set.rb:65:in `dispatch'
165
+ actionpack (3.1.1) lib/action_dispatch/routing/route_set.rb:29:in `call'
166
+ rack-mount (0.8.3) lib/rack/mount/route_set.rb:152:in `call'
167
+ rack-mount (0.8.3) lib/rack/mount/code_generation.rb:114:in `recognize'
168
+ rack-mount (0.8.3) lib/rack/mount/code_generation.rb:87:in `optimized_each'
169
+ rack-mount (0.8.3) lib/rack/mount/code_generation.rb:113:in `recognize'
170
+ rack-mount (0.8.3) lib/rack/mount/route_set.rb:141:in `call'
171
+ actionpack (3.1.1) lib/action_dispatch/routing/route_set.rb:532:in `call'
172
+ omniauth (1.1.1) lib/omniauth/strategy.rb:177:in `call!'
173
+ omniauth (1.1.1) lib/omniauth/strategy.rb:157:in `call'
174
+ omniauth (1.1.1) lib/omniauth/builder.rb:48:in `call'
175
+ newrelic_rpm (3.4.1) lib/new_relic/rack/browser_monitoring.rb:12:in `call'
176
+ newrelic_rpm (3.4.1) lib/new_relic/rack/developer_mode.rb:24:in `call'
177
+ warden (1.2.1) lib/warden/manager.rb:35:in `call'
178
+ org/jruby/RubyKernel.java:1173:in `catch'
179
+ warden (1.2.1) lib/warden/manager.rb:34:in `call'
180
+ versionist (0.3.1) lib/versionist/middleware.rb:36:in `_call'
181
+ versionist (0.3.1) lib/versionist/middleware.rb:17:in `call'
182
+ actionpack (3.1.1) lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
183
+ rack (1.3.6) lib/rack/etag.rb:23:in `call'
184
+ rack (1.3.6) lib/rack/conditionalget.rb:35:in `call'
185
+ actionpack (3.1.1) lib/action_dispatch/middleware/head.rb:14:in `call'
186
+ actionpack (3.1.1) lib/action_dispatch/middleware/params_parser.rb:21:in `call'
187
+ actionpack (3.1.1) lib/action_dispatch/middleware/flash.rb:243:in `call'
188
+ rack (1.3.6) lib/rack/session/abstract/id.rb:195:in `context'
189
+ rack (1.3.6) lib/rack/session/abstract/id.rb:190:in `call'
190
+ actionpack (3.1.1) lib/action_dispatch/middleware/cookies.rb:331:in `call'
191
+ activerecord (3.1.1) lib/active_record/query_cache.rb:62:in `call'
192
+ activerecord (3.1.1) lib/active_record/connection_adapters/abstract/connection_pool.rb:477:in `call'
193
+ actionpack (3.1.1) lib/action_dispatch/middleware/callbacks.rb:29:in `call'
194
+ activesupport (3.1.1) lib/active_support/callbacks.rb:407:in `_run_call_callbacks'
195
+ org/jruby/RubyBasicObject.java:1667:in `__send__'
196
+ org/jruby/RubyKernel.java:2077:in `send'
197
+ activesupport (3.1.1) lib/active_support/callbacks.rb:81:in `run_callbacks'
198
+ actionpack (3.1.1) lib/action_dispatch/middleware/callbacks.rb:28:in `call'
199
+ actionpack (3.1.1) lib/action_dispatch/middleware/reloader.rb:68:in `call'
200
+ rack (1.3.6) lib/rack/sendfile.rb:101:in `call'
201
+ actionpack (3.1.1) lib/action_dispatch/middleware/remote_ip.rb:48:in `call'
202
+ actionpack (3.1.1) lib/action_dispatch/middleware/show_exceptions.rb:47:in `call'
203
+ railties (3.1.1) lib/rails/rack/logger.rb:13:in `call'
204
+ rack (1.3.6) lib/rack/methodoverride.rb:24:in `call'
205
+ rack (1.3.6) lib/rack/runtime.rb:17:in `call'
206
+ activesupport (3.1.1) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
207
+ rack (1.3.6) lib/rack/lock.rb:15:in `call'
208
+ actionpack (3.1.1) lib/action_dispatch/middleware/static.rb:53:in `call'
209
+ railties (3.1.1) lib/rails/engine.rb:456:in `call'
210
+ file:jruby-rack (1.1.10) lib/jruby-rack-1.1.10.jar!/rack/handler/servlet.rb:22:in `call'</code></pre>
211
+ </div>
212
+ </div>
213
+
214
+
215
+
216
+ <h2 style="margin-top: 30px">Request</h2>
217
+ <p><b>Parameters</b>: <pre>{&quot;from&quot;=&gt;&quot;markdown&quot;,
218
+ &quot;to&quot;=&gt;&quot;epub&quot;,
219
+ &quot;test_mode&quot;=&gt;&quot;true&quot;,
220
+ &quot;epub_metadata&quot;=&gt;&quot;metadata.xml&quot;,
221
+ &quot;epub_cover_image&quot;=&gt;&quot;document-open.png&quot;,
222
+ &quot;epub_stylesheet&quot;=&gt;&quot;stylesheet.css&quot;}</pre></p>
223
+
224
+ <p><a href="#" onclick="document.getElementById('session_dump').style.display='block'; return false;">Show session dump</a></p>
225
+ <div id="session_dump" style="display:none"><pre></pre></div>
226
+
227
+ <p><a href="#" onclick="document.getElementById('env_dump').style.display='block'; return false;">Show env dump</a></p>
228
+ <div id="env_dump" style="display:none"><pre>HTTP_ACCEPT: &quot;*/*&quot;
229
+ REMOTE_ADDR: &quot;0:0:0:0:0:0:0:1%0&quot;
230
+ REMOTE_HOST: &quot;0:0:0:0:0:0:0:1%0&quot;
231
+ REMOTE_USER: &quot;&quot;
232
+ SERVER_NAME: &quot;localhost&quot;</pre></div>
233
+
234
+
235
+ <h2 style="margin-top: 30px">Response</h2>
236
+ <p><b>Headers</b>: <pre>None</pre></p>
237
+
238
+
239
+
240
+ </body>
241
+ </html>