Discussion:
ABCL conflicts with tomcat on ## path names
Blake McBride
2018-05-30 17:51:17 UTC
Permalink
With tomcat, if you want to change the root application you can
either rename the directory ROOT or ROOT##myapp. ROOT#myapp makes a lot of
sense because it reminds you what's there. However, that naming convention
seems to conflict with ABCL. My app under ROOT works fine, but when I name
it to ROOT##myapp ABCL gives:

org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at
com.arahant.utils.StartupListener.contextInitialized(StartupListener.java:225)
at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4792)
at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at
org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1140)
at
org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
ERROR placeholder called with arguments:
Failed to get cached ZipFile because java.io.FileNotFoundException:
/home/arahant/apache-tomcat-8.5.31/demo/ROOT (No such file or directory)
Failed to get cached ZipFile because java.io.FileNotFoundException:
/home/arahant/apache-tomcat-8.5.31/demo/ROOT (No such file or directory)
[ERROR] [utils.StartupListener ] - 2018-05-30 12:42:02 Error
initializing Lisp.
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at
com.arahant.utils.StartupListener.contextInitialized(StartupListener.java:225)
at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4792)
at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at
org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1140)
at
org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at
com.arahant.utils.StartupListener.contextInitialized(StartupListener.java:225)
at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4792)
at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at
org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1140)
at
org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
[ERROR] [utils.StartupListener ] - org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at
com.arahant.utils.StartupListener.contextInitialized(StartupListener.java:225)
at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4792)
at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at
org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1140)
at
org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Alan Ruttenberg
2018-05-30 19:43:24 UTC
Permalink
Can say what you mean by "work"?

I can make an use pathname with "##" in it without error.
If for pathname I use a URI instead, I get an error about the second "#"
which is illegal in the fragment name. If you were doing that in web
standards you would need to percent-encode the second "#"

But how to quote inside filenames in lisp is confusing to me. Is it even
specified?

I made a file called ~/a##b
(probe-file "/Users/alanr/a##b") succeeds

(probe-file "file:///Users/alanr/a##b") fails: "Improper URI syntax for
'file:/Users/lori/repos/bfo-theory/tex/a##b': java.net.URISyntaxException:
Illegal character in fragment at index 42:
file:///Users/lori/repos/bfo-theory/tex/a##b"

(probe-file "file:///Users/lori/repos/bfo-theory/tex/a#%23b") returns nil

Still not the same error as you get.
Post by Blake McBride
With tomcat, if you want to change the root application you can
either rename the directory ROOT or ROOT##myapp. ROOT#myapp makes a lot of
sense because it reminds you what's there. However, that naming convention
seems to conflict with ABCL. My app under ROOT works fine, but when I name
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(
StartupListener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(
StandardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(
StandardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(
ContainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(
HostConfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.
run(HostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(
ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(
ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
/home/arahant/apache-tomcat-8.5.31/demo/ROOT (No such file or directory)
/home/arahant/apache-tomcat-8.5.31/demo/ROOT (No such file or directory)
[ERROR] [utils.StartupListener ] - 2018-05-30 12:42:02 Error
initializing Lisp.
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(
StartupListener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(
StandardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(
StandardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(
ContainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(
HostConfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.
run(HostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(
ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(
ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(
StartupListener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(
StandardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(
StandardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(
ContainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(
HostConfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.
run(HostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(
ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(
ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
[ERROR] [utils.StartupListener ] - org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(
StartupListener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(
StandardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(
StandardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(
ContainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(
HostConfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.
run(HostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(
ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(
ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Blake McBride
2018-05-30 20:23:38 UTC
Permalink
I get that error when I execute the following from Java:

interpreter = Interpreter.createInstance();


That is what is at com.arahant.lisp.ABCL.init(ABCL.java:35)
Post by Alan Ruttenberg
Can say what you mean by "work"?
I can make an use pathname with "##" in it without error.
If for pathname I use a URI instead, I get an error about the second "#"
which is illegal in the fragment name. If you were doing that in web
standards you would need to percent-encode the second "#"
But how to quote inside filenames in lisp is confusing to me. Is it even
specified?
I made a file called ~/a##b
(probe-file "/Users/alanr/a##b") succeeds
(probe-file "file:///Users/alanr/a##b") fails: "Improper URI syntax for
file:///Users/lori/repos/bfo-theory/tex/a##b"
(probe-file "file:///Users/lori/repos/bfo-theory/tex/a#%23b") returns nil
Still not the same error as you get.
Post by Blake McBride
With tomcat, if you want to change the root application you can
either rename the directory ROOT or ROOT##myapp. ROOT#myapp makes a lot of
sense because it reminds you what's there. However, that naming convention
seems to conflict with ABCL. My app under ROOT works fine, but when I name
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(
HostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(
Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
/home/arahant/apache-tomcat-8.5.31/demo/ROOT (No such file or directory)
/home/arahant/apache-tomcat-8.5.31/demo/ROOT (No such file or directory)
[ERROR] [utils.StartupListener ] - 2018-05-30 12:42:02 Error
initializing Lisp.
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(
HostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(
Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(
HostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(
Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
[ERROR] [utils.StartupListener ] - org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(
HostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(
Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Alan Ruttenberg
2018-05-30 20:59:09 UTC
Permalink
Ah. I'll have to defer to Mark on this. What's happening is that
Pathname.makeURL is being called, I think so as to be able to load classes
from the ABCL jar file. makeURL creates a file:// URL, and that fails
because you can't have ## in a URL.

Presumably you get a nastier error than I do because not enough of lisp is
set up to report it better.

I can think of a number of ways of fixing it, in principle, but I've not
worked in that are of ABCL and it's delicate enough that I'm not keen to.

Practically, you probably want to situate in a path that doesn't include
"##" (generic advice "don't do that" :-/)

What's worse is that it seems you will have problems even with a single "#"
(pathname "file:///foo.com/#r") -> #P"/foo.com"
That's a bug...

Maybe Mark can figure out how it could be delicately fixed...

Alan
Post by Blake McBride
interpreter = Interpreter.createInstance();
That is what is at com.arahant.lisp.ABCL.init(ABCL.java:35)
Post by Alan Ruttenberg
Can say what you mean by "work"?
I can make an use pathname with "##" in it without error.
If for pathname I use a URI instead, I get an error about the second "#"
which is illegal in the fragment name. If you were doing that in web
standards you would need to percent-encode the second "#"
But how to quote inside filenames in lisp is confusing to me. Is it even
specified?
I made a file called ~/a##b
(probe-file "/Users/alanr/a##b") succeeds
(probe-file "file:///Users/alanr/a##b") fails: "Improper URI syntax for
file:///Users/lori/repos/bfo-theory/tex/a##b"
(probe-file "file:///Users/lori/repos/bfo-theory/tex/a#%23b") returns nil
Still not the same error as you get.
Post by Blake McBride
With tomcat, if you want to change the root application you can
either rename the directory ROOT or ROOT##myapp. ROOT#myapp makes a lot of
sense because it reminds you what's there. However, that naming convention
seems to conflict with ABCL. My app under ROOT works fine, but when I name
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(H
ostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executor
s.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
/home/arahant/apache-tomcat-8.5.31/demo/ROOT (No such file or directory)
/home/arahant/apache-tomcat-8.5.31/demo/ROOT (No such file or directory)
[ERROR] [utils.StartupListener ] - 2018-05-30 12:42:02 Error
initializing Lisp.
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(H
ostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executor
s.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(H
ostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executor
s.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
[ERROR] [utils.StartupListener ] - org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(H
ostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executor
s.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Blake McBride
2018-05-30 21:22:49 UTC
Permalink
Thanks, Alan!

Perhaps a special case because tomcat requires that the name starts with
"ROOT##". I'm pretty sure it has to be uppercase too.

Thanks!

Blake
Post by Alan Ruttenberg
Ah. I'll have to defer to Mark on this. What's happening is that
Pathname.makeURL is being called, I think so as to be able to load classes
from the ABCL jar file. makeURL creates a file:// URL, and that fails
because you can't have ## in a URL.
Presumably you get a nastier error than I do because not enough of lisp is
set up to report it better.
I can think of a number of ways of fixing it, in principle, but I've not
worked in that are of ABCL and it's delicate enough that I'm not keen to.
Practically, you probably want to situate in a path that doesn't include
"##" (generic advice "don't do that" :-/)
What's worse is that it seems you will have problems even with a single "#"
(pathname "file:///foo.com/#r") -> #P"/foo.com"
That's a bug...
Maybe Mark can figure out how it could be delicately fixed...
Alan
Post by Blake McBride
interpreter = Interpreter.createInstance();
That is what is at com.arahant.lisp.ABCL.init(ABCL.java:35)
On Wed, May 30, 2018 at 2:43 PM, Alan Ruttenberg <
Post by Alan Ruttenberg
Can say what you mean by "work"?
I can make an use pathname with "##" in it without error.
If for pathname I use a URI instead, I get an error about the second "#"
which is illegal in the fragment name. If you were doing that in web
standards you would need to percent-encode the second "#"
But how to quote inside filenames in lisp is confusing to me. Is it even
specified?
I made a file called ~/a##b
(probe-file "/Users/alanr/a##b") succeeds
(probe-file "file:///Users/alanr/a##b") fails: "Improper URI syntax for
file:///Users/lori/repos/bfo-theory/tex/a##b"
(probe-file "file:///Users/lori/repos/bfo-theory/tex/a#%23b") returns nil
Still not the same error as you get.
Post by Blake McBride
With tomcat, if you want to change the root application you can
either rename the directory ROOT or ROOT##myapp. ROOT#myapp makes a lot of
sense because it reminds you what's there. However, that naming convention
seems to conflict with ABCL. My app under ROOT works fine, but when I name
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.
java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(H
ostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executor
s.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
/home/arahant/apache-tomcat-8.5.31/demo/ROOT (No such file or directory)
/home/arahant/apache-tomcat-8.5.31/demo/ROOT (No such file or directory)
[ERROR] [utils.StartupListener ] - 2018-05-30 12:42:02 Error
initializing Lisp.
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.
java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(H
ostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executor
s.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.
java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(H
ostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executor
s.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
[ERROR] [utils.StartupListener ] - org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.java:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.
java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(H
ostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executor
s.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Alan Ruttenberg
2018-05-30 21:42:30 UTC
Permalink
Post by Blake McBride
Thanks, Alan!
Perhaps a special case because tomcat requires that the name starts with
"ROOT##". I'm pretty sure it has to be uppercase too.
That's odd. I can certainly start up ABCL in a direct whose name is mixed
case. MacOS preserves but doesn't consider case significant.

Thanks!
np
Alan
Blake
Post by Blake McBride
Post by Alan Ruttenberg
Ah. I'll have to defer to Mark on this. What's happening is that
Pathname.makeURL is being called, I think so as to be able to load classes
from the ABCL jar file. makeURL creates a file:// URL, and that fails
because you can't have ## in a URL.
Presumably you get a nastier error than I do because not enough of lisp
is set up to report it better.
I can think of a number of ways of fixing it, in principle, but I've not
worked in that are of ABCL and it's delicate enough that I'm not keen to.
Practically, you probably want to situate in a path that doesn't include
"##" (generic advice "don't do that" :-/)
What's worse is that it seems you will have problems even with a single "#"
(pathname "file:///foo.com/#r") -> #P"/foo.com"
That's a bug...
Maybe Mark can figure out how it could be delicately fixed...
Alan
Post by Blake McBride
interpreter = Interpreter.createInstance();
That is what is at com.arahant.lisp.ABCL.init(ABCL.java:35)
On Wed, May 30, 2018 at 2:43 PM, Alan Ruttenberg <
Post by Alan Ruttenberg
Can say what you mean by "work"?
I can make an use pathname with "##" in it without error.
If for pathname I use a URI instead, I get an error about the second
"#" which is illegal in the fragment name. If you were doing that in web
standards you would need to percent-encode the second "#"
But how to quote inside filenames in lisp is confusing to me. Is it
even specified?
I made a file called ~/a##b
(probe-file "/Users/alanr/a##b") succeeds
(probe-file "file:///Users/alanr/a##b") fails: "Improper URI syntax
file:///Users/lori/repos/bfo-theory/tex/a##b"
(probe-file "file:///Users/lori/repos/bfo-theory/tex/a#%23b") returns nil
Still not the same error as you get.
Post by Blake McBride
With tomcat, if you want to change the root application you can
either rename the directory ROOT or ROOT##myapp. ROOT#myapp makes a lot of
sense because it reminds you what's there. However, that naming convention
seems to conflict with ABCL. My app under ROOT works fine, but when I name
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.ja
va:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.j
ava:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.
java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(H
ostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executor
s.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
/home/arahant/apache-tomcat-8.5.31/demo/ROOT (No such file or directory)
/home/arahant/apache-tomcat-8.5.31/demo/ROOT (No such file or directory)
[ERROR] [utils.StartupListener ] - 2018-05-30 12:42:02 Error
initializing Lisp.
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.ja
va:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.j
ava:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.
java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(H
ostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executor
s.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
org.armedbear.lisp.IntegrityError
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.ja
va:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.j
ava:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.
java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(H
ostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executor
s.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
[ERROR] [utils.StartupListener ] - org.armedbear.lisp.IntegrityEr
ror
at org.armedbear.lisp.Primitives$pf_error.execute(Primitives.ja
va:1577)
at org.armedbear.lisp.Primitive.execute(Primitive.java:113)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.Lisp.error(Lisp.java:383)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:222)
at org.armedbear.lisp.ZipCache.get(ZipCache.java:102)
at org.armedbear.lisp.Pathname.truename(Pathname.java:2275)
at org.armedbear.lisp.Load.findLoadableFile(Load.java:69)
at org.armedbear.lisp.Load.loadSystemFile(Load.java:305)
at org.armedbear.lisp.Interpreter.initializeLisp(Interpreter.java:172)
at org.armedbear.lisp.Interpreter.createInstance(Interpreter.java:72)
at com.arahant.lisp.ABCL.init(ABCL.java:35)
at com.arahant.utils.StartupListener.contextInitialized(Startup
Listener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(Stand
ardContext.java:4792)
at org.apache.catalina.core.StandardContext.startInternal(Stand
ardContext.java:5256)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.j
ava:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(Cont
ainerBase.java:754)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBas
e.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.
java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostC
onfig.java:1140)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(H
ostConfig.java:1875)
at java.util.concurrent.Executors$RunnableAdapter.call(Executor
s.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
Executor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
lExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Loading...