2013-01-07 113 views
1

我一直在Ubuntu服务器12.04 LTS上运行OpenERP 6.1,最近3到4个月。在那段时间里,我几次重启(重新启动)Ubuntu。我从他们的网站下载的软件包中安装了OpenERP。我手动添加了pychart.py模块,因为它不会在没有它的情况下启动openerp-server。到现在为止,一切都很顺利。OpenERP 6.1找不到处理程序

今天我用修改后的重新编译版本替换了procurement.pyc文件,并以不同的名称备份了原始版本。 然后我重新启动了openerp-server(sudo service openerp restart)。 我从我的Firefox的Windows客户端连接到openerp,并得到了“找不到处理程序”的白色屏幕。

在所有这些操作之前,它工作正常。所以我想我会把它塞满我的改变,并决定恢复原来的procurement.pyc文件。 重启openerp服务器按照上述相同的过程,但仍然得到“找不到处理程序”的白色屏幕。

重新启动的Ubuntu,从服务中重启openerp-server并手动无数次刷新firefox连接,将端口8069/tcp OUT添加到UFW,因为它只有IN。没有什么帮助,我仍然得到了“找不到处理程序”的白色屏幕。

这怎么可能?

我从其他人那里看到网上其他相同的问题,但每次他们似乎都找到了自己的解决方案。

我依靠的唯一的事情是日志文件:

2013-01-07 14:10:03,958 1381 INFO ? openerp: OpenERP version 6.1-20121008-233119 

2013-01-07 14:10:03,958 1381 INFO ? openerp: addons paths: /home/download/openerp- 6.1-20121008-233119/openerp/addons 

2013-01-07 14:10:03,958 1381 INFO ? openerp: database hostname: localhost 
2013-01-07 14:10:03,958 1381 INFO ? openerp: database port: 5432 
2013-01-07 14:10:03,959 1381 INFO ? openerp: database user: openerp 
2013-01-07 14:10:03,959 1381 INFO ? openerp.service.netrpc_server: starting NET-RPC service on 0.0.0.0:8070 
2013-01-07 14:10:03,960 1381 INFO ? openerp.netsvc: Starting 1 services 
2013-01-07 14:10:03,986 1381 INFO ? openerp.wsgi.core: HTTP service (werkzeug) running on 0.0.0.0:8069 
2013-01-07 14:10:04,062 1381 INFO ? openerp.addons.web: embedded mode 
2013-01-07 14:10:04,226 1381 CRITICAL ? openerp.modules.module: Couldn't load module web 
2013-01-07 14:10:04,227 1381 CRITICAL ? openerp.modules.module: No module named sale_order 
2013-01-07 14:10:04,227 1381 ERROR ? openerp: Failed to load server-wide module `web`. 
The `web` module is provided by the addons found in the `openerp-web` project. 
Maybe you forgot to add those addons in your addons_path configuration. 
Traceback (most recent call last): 
    File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20121008_233119-py2.7.egg/EGG-INFO/scripts/openerp-server", line 252, in <module> 
    openerp.modules.module.load_openerp_module(m) 
    File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20121008_233119-py2.7.egg/openerp/modules/module.py", line 419, in load_openerp_module 
    getattr(sys.modules['openerp.addons.' + module_name], info['post_load'])() 
    File "/home/download/openerp-6.1-20121008-233119/openerp/addons/web/__init__.py", line 29, in wsgi_postload 
    app = common.http.Root(o) 
    File "/home/download/openerp-6.1-20121008-233119/openerp/addons/web/common/http.py", line 453, in __init__ 
    static_dirs = self._load_addons(openerp_addons_namespace) 
    File "/home/download/openerp-6.1-20121008-233119/openerp/addons/web/common/http.py", line 523, in _load_addons 
    m = __import__('openerp.addons.' + module) 
    File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20121008_233119-py2.7.egg/openerp/modules/module.py", line 139, in load_module 
    mod = imp.load_module('openerp.addons.' + module_part, f, path, descr) 
    File "/home/download/openerp-6.1-20121008-233119/openerp/addons/sale/__init__.py", line 29, in <module> 
    import report 
    File "/home/download/openerp-6.1-20121008-233119/openerp/addons/sale/report/__init__.py", line 22, in <module> 
    import sale_order 
ImportError: No module named sale_order 
2013-01-07 14:10:04,228 1381 INFO ? openerp: OpenERP server is running, waiting for connections... 
2013-01-07 14:10:28,283 1381 INFO ? werkzeug: 192.xxx.xx.xx - - [07/Jan/2013 14:10:28] "GET /web/webclient/home HTTP/1.1" 404 - 
2013-01-07 14:10:37,390 1381 INFO ? openerp.netsvc: Stopping 1 services 

为了澄清目的,IP地址192.xxx.xx.xx对应于客户试图通过网络来访问的OpenERP和接收“找不到处理程序”消息。尝试另一个客户端的结果相同。

为什么这两条CRITICAL线?为什么不能在一个小时之前加载模块Web?它告诉我sale_order模块不存在,但它确实存在。

某些解决方案认为要将addons文件夹的路径添加到openerp-server.init文件中。但是为什么我会在一小时前没有要求时这样做?另外它提到了一个openerp-web项目,该项目显然已经变成一个openerp-web文件夹,一旦安装完成,应该指定到插件路径中。我目前没有这个文件夹,以前从未需要它,所以我不相信我在正确的道路上解决我的问题。

有没有人有任何想法?这对我来说绝对没有意义。

感谢您的帮助。

+0

您准确使用了哪个包?你是如何安装它的? –

+0

我相信这个软件包是openerp_6.1-latest-1_all.deb – CloseISQ

+0

sudo wget http://nightly.openerp.com/6.1/releases/openerp_6.1-latest-1_all.deb。然后我主要遵循这里指出的方法:http://elkafil.blogspot.fr/2012/05/installer-openerp-611-sur-ubuntu-1204.html。最后是手动安装pychart.py。 – CloseISQ

回答

1

请检查销售模块,在报告文件夹中是否有一个名为sale_order.py的文件? 如果没有,请下载销售模块并更换您的销售模块。 sale_order.py具有销售订单报告解析器。如果您不想要报告,请在销售模块的报告文件夹中注释来自init .py文件的行import_order_order。

+0

好吧,发生了什么是我不由自主地删除了sale_order.py和pyc文件。我重新编译了一个pyc文件并重新导入到sale/report目录中,它已经解决了我的问题。感谢您让我走上寻找解决方案的道路。 – CloseISQ

1

没有标准模块,没有名为sale_order的模块。也许是销售模块。检查自定义模块中的依赖关系。

+0

这是我没有得到的东西,我已经删除了我的定制模块并恢复到原来的模块,即销售模块所依赖的“procurement.pyc”。将它移回时,我可能塞满了procurement.pyc文件名。我会明天检查。 – CloseISQ

1

它看起来像是安装了Debian软件包之外的东西,而且两者在糟糕的方式中进行交互。看看路径在回溯:

File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20121008_233119-py2.7.egg/EGG-INFO/scripts/openerp-server", line 252, in <module> 

相比,这一个:

File "/home/download/openerp-6.1-20121008-233119/openerp/addons/sale/__init__.py", line 29, in <module> 

这是最绝对不是从安装Debian的软件包,并在任何情况下,它很奇怪,你有OpenERP的位在这些不同的地方。这是否在你的环境中预期?如果没有,我敢打赌这是问题所在。

+0

这有点不寻常,但它工作正常,交互很好。我的问题来自删除sale_order.py和pyc文件。 – CloseISQ