Unable to load configuration. - bean - jar:file:/D:/tomcat-7/apache-tomcat-7.0.23/we
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unable to load configuration. - bean - jar:file:/D:/tomcat-7/apache-tomcat-7.0.23/we相关的知识,希望对你有一定的参考价值。
struts2升级为struts2.3.15,不知道为什么项目启动一直抛异常。异常信息:Unable to load configuration. - bean - jar:file:/D:/tomcat-7/apache-tomcat-7.0.23/webapps/w/WEB-INF/lib/struts2-core-2.3.15.1.jar!/struts-default.xml:53:178
希望哪位大侠知道的能帮助小妹。项目升级很急,在这里先谢过了!十分感谢大家来指点迷津!!!
包冲突,或缺包,比较前后包有何不同之处
Struts2是apache项目下的一个web 框架,普遍应用于阿里巴巴、京东等互联网、政府、企业门户网站。
1.可远程执行服务器脚本代码
用户可以构造http://host/struts2-blank/example/X.action?action:%25(new+java.lang.ProcessBuilder(new+java.lang.String[]'command','goes','here')).start()链接,command goes here可以换成是破坏脚本的路径和参数,比如fdisk -f等,造成破环系统无法运行的目的。
2.重定向漏洞
用户可以构造如知名网站淘宝的重定向连接,形如<a href="http://www.淘宝.com/item00001.html?redirect:http://黑客/getyourPassword">打折新款</a>,引导用户点击后进入钓鱼网站,在界面上让其进行登陆用以获取用户的密码。
参考技术A 包冲突,或缺包,比较前后包有何不同之处本回答被提问者采纳 参考技术B 清除tomcat缓存试试,, 网上有这样的案例VisualSFM使用记录1 unable to load libsiftgpu.so
官网:http://ccwu.me/vsfm/
(解决过程蓝色字,问题原因解决方法红色字)
SFM computer missing match阶段运行出现错误
More than 189MB of graphic memory may be allocated under the default settings. If the program halts here, adjust parameters to save memory and rerun the task: [Tools->Enable GPU->Set Maximum DIM] Note some octaves may be automatically skipped ERROR: unable to load libsiftgpu.so ERROR: unable to get function address SIFT: 0000, 1080x1920, ERROR1 ERROR: unable to locate sift binary. FAQ at http://ccwu.me/vsfm/doc.html#errors
查看官方文档提示如下
1. "SiftGPU failed the detection test" or "ERROR: siftgpu doesn‘t work"
This means SiftGPU feature detection did not work properly. Either your graphic driver
is out-dated or your graphic card does not support SiftGPU at all. You should give
it another try after updating the graphic driver. If it fails the same way, you may
need to switch to CPU for feature detection or get a better GPU.
2. "ERROR1" + "ERROR: unable to locate sift binary"
This means VisualSFM tried to use CPU feature detector but it could not find it.
Under windows, it looks for .SiftWin32.exe if param_use_vlfeat_or_lowe==0 or
.sift.exe otherwise. For other OS, it will look for ./sift
1.SiftGPU无法工作,可能是显卡驱动程序过时,或者显卡驱动不支持SiftGPU,可以更新显卡驱动进行尝试,如果依旧失败,可以转换用CPU进行特征检测或获取更好的GPU
2.找不到SIFT二进制文件,意味着VisualSFM试图使用CPU功能检测器,但找不到它。
Typical hardware requirements
1. The feature detection step requires a decent GPU (ATI/ nVidia / Intel)
In particular, a large amount of GPU memory (1GB) is expected.
Small GPU memory may cause problems for the feature detection: click here.
The latest SiftGPU-V400 works for Intel graphic card in some platforms.
1.特征检测步骤需要一个合适的GPU(ATI/Nvidia/Intel)尤其需要大量的GPU内存(1GB)。小的GPU内存可能会导致功能检测出现问题:单击此处。最新的siftgpu-v400可在某些平台上的英特尔显卡上工作。
我的显卡驱动以及CUDA信息如下,硬件环境方面并没发现什么问题
NVIDIA-SMI 418.39 Driver Version: 418.39 CUDA Version: 10.1
尝试了以下操作:
1.对SiftGPU重新编译
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ make clean
rm -f build/*.o
rm -f bin/libsiftgpu.a
rm -f bin/libsiftgpu.so
rm -f bin/TestWinGlut
rm -f bin/SimpleSIFT
rm -f bin/speed
rm -f bin/server_siftgpu
rm -f bin/MultiThreadSIFT
rm -f ProgramCU.linkinfo
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ make -j12
cp /usr/lib64/libGLEW.so.2.1 ../../VisualSFM_linux_64bit/vsfm/bin/
cp /usr/lib64/libGLEW.so.2.1 ../../VisualSFM_linux_64bit/vsfm/bin/
2.将libsiftgpu.so拷贝至/usr/local/lib/目录
~/Documents/SFMSource/VisualSFM_linux_64bit/vsfm$sudo cp bin/libsiftgpu.so /usr/local/lib/
~/Documents/SFMSource/VisualSFM_linux_64bit/vsfm$ bin/VisualSFM
失败
2.将正确的路径加入环境变量
~/Documents/SFMSource/VisualSFM_linux_64bit/vsfm$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/Documents/SFMSource/VisualSFM_linux_64bit/vsfm/bin
~/Documents/SFMSource/VisualSFM_linux_64bit/vsfm$ bin/VisualSFM
失败
3.进入/SiftGPU-V400/SiftGPU/bin 运行可执行文件SimpleSIFT,运行失败,查看依赖后进入程序源码/SiftGPU-V400/SiftGPU/src/TestWin/SimpleSIFT.cpp查找原因。
~/Documents/SFMSource/SiftGPU-V400/SiftGPU/bin$ ./SimpleSIFT
运行SimpleSIFT文件无结果显示。
~/Documents/SFMSource/SiftGPU-V400/SiftGPU/bin$ ldd ./SimpleSIFT
查看相关依赖正常
打开源码
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ vim src/TestWin/SimpleSIFT.cpp
在void * hsiftgpu = dlopen("libsiftgpu.so", RTLD_LAZY);处打印一些字符判断是否加载成功。
再执行
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ make
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ bin/SimpleSIFT
无结果显示,将路径加入环境变量再运行
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/Documents/SFMSource/SiftGPU-V400/SiftGPU/bin
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ bin/SimpleSIFT
打印结果说明.so文件依旧没有成功加载
------可忽略的系列尝试
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$export LD_LIBRARY_PATH=~/Documents/SFMSource/SiftGPU-V400/SiftGPU/bin
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ echo $LD_LIBRARY_PATH
/home/zsl/Documents/SFMSource/SiftGPU-V400/SiftGPU/bin
修改了路径变量再运行
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ bin/SimpleSIFT
hello?
还是不行,重新编译
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ make -j12
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ vim src/TestWin/SimpleSIFT.cpp
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ man dlopen
----------
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ vim src/TestWin/SimpleSIFT.cpp
4.根据 dlopen 命令的使用,
在SimpleSIFT.cpp中so载入异常出添加代码,使其打印加载so失败的错误原因
添加代码如下:
//void * hsiftgpu = dlopen("libsiftgpu.so", RTLD_LAZY);
void * hsiftgpu = dlopen("/home/zsl/Documents/SFMSource/SiftGPU-V400/SiftGPU/bin/libsiftgpu.so", RTLD_LAZY);
if (!hsiftgpu) {
fprintf(stderr, "%s
", dlerror());
exit(EXIT_FAILURE);
}
#endif
printf("hello?
");
if(hsiftgpu == NULL) return 0;
printf("hello
");
编辑完成后,编译执行
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ make
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ bin/SimpleSIFT
libGLEW.so.2.1: cannot open shared object file: No such file or directory
返回了失败原因:因为加载libsiftgup.so需要加载libGLEW.so.2.1然而找不到该文件。说明该文件没有指明路径。找到该文件:
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ locate libGLEW.so.2.1
/home/zsl/Documents/SFMSource/glew-2.1.0/lib/libGLEW.so.2.1
/home/zsl/Documents/SFMSource/glew-2.1.0/lib/libGLEW.so.2.1.0
/usr/lib64/libGLEW.so.2.1
/usr/lib64/libGLEW.so.2.1.0
将libGLEW.so.2.1拷贝到SiftGPU-V400/SiftGPU/bin/目录下运行SimpleSIFT 出结果了。
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ cp /usr/lib64/libGLEW.so.2.1 bin/
~/Documents/SFMSource/SiftGPU-V400/SiftGPU$ bin/SimpleSIFT
hello?
hello
[GPU VENDOR]: NVIDIA Corporation 10404MB
TEXTURE: 32768
[SiftGPU Language]: GLSL
Unable to open image [code = 1290]
Unable to open image [code = 1290]
[SiftMatchGPU]: GLSL
0 sift matches were found;
为使其找到libGLEW.so.2.1,将其拷贝到vsfm/bin/下
cp /usr/lib64/libGLEW.so.2.1 ../../VisualSFM_linux_64bit/vsfm/bin/
~/Documents/SFMSource/VisualSFM_linux_64bit/vsfm$ bin/VisualSFM
成功。
===========================
第二天开机使用又出现了一样的 unable to load libsiftgpu.so
错误,而且/SiftGPU-V400/SiftGPU$ bin/SimpleSIFT 是有输出的。
然后我编译了几次都没有解决问题,最后到目录/VisualSFM_linux_64bit/vsfm下
$ sudo cp bin/libsiftgpu.so /usr/local/lib
Computer Missing Matches成功
以上是关于Unable to load configuration. - bean - jar:file:/D:/tomcat-7/apache-tomcat-7.0.23/we的主要内容,如果未能解决你的问题,请参考以下文章
Unable to load dispatcher.filter.StrutsPrepareAndExecuteFilter
Excel Web Access 报错:Unable to Load Workbook
Unable to load configuration. - [unknown location]