Odoo Help


QWebTemplateNotFound: External ID not found in the system: web.login?

Kasper Souren
on 7/2/14, 8:45 AM 37,837 views

UPDATE: Later I experienced the same on a system with Ubuntu 14.04

I'm trying to install Odoo on my Mac with OSX 10.9. Here's what I did:

1. `brew install postgresql`

2. `postgres -D /usr/local/var/postgres`
3. `createdb odootest`
4. `git clone https://github.com/odoo/odoo.git`, the repo is 500MB big so this takes a while
5. `cd odoo; sudo python setup.py install`, this will also install many dependencies with `easy_install`, ignore all the warnings
6. `python odoo.py -s` to start with sample data generated by odoo

7. I ran into an error with pyPdf so `sudo easy_install pyPdf`

But now:

014-07-02 12:42:09,332 44979 ERROR guaka werkzeug: Error on request:
Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/Werkzeug-0.9.6-py2.7.egg/werkzeug/serving.py", line 177, in run_wsgi
  File "/Library/Python/2.7/site-packages/Werkzeug-0.9.6-py2.7.egg/werkzeug/serving.py", line 165, in execute
    application_iter = app(environ, start_response)
  File "/Users/guaka/playground/odoo/openerp/service/server.py", line 280, in app
    return self.app(e, s)
  File "/Users/guaka/playground/odoo/openerp/service/wsgi_server.py", line 215, in application
    return application_unproxied(environ, start_response)
  File "/Users/guaka/playground/odoo/openerp/service/wsgi_server.py", line 201, in application_unproxied
    result = handler(environ, start_response)
  File "/Users/guaka/playground/odoo/openerp/http.py", line 1151, in __call__
    return self.dispatch(environ, start_response)
  File "/Users/guaka/playground/odoo/openerp/http.py", line 1128, in __call__
    return self.app(environ, start_wrapped)
  File "/Library/Python/2.7/site-packages/Werkzeug-0.9.6-py2.7.egg/werkzeug/wsgi.py", line 588, in __call__
    return self.app(environ, start_response)
  File "/Users/guaka/playground/odoo/openerp/http.py", line 1297, in dispatch
    response = self.get_response(httprequest, result, explicit_session)
  File "/Users/guaka/playground/odoo/openerp/http.py", line 1232, in get_response
    result = request.registry['ir.http']._handle_exception(e)
  File "/Users/guaka/playground/odoo/openerp/addons/base/ir/ir_http.py", line 100, in _handle_exception
    return request._handle_exception(exception)
  File "/Users/guaka/playground/odoo/openerp/http.py", line 544, in _handle_exception
    return super(HttpRequest, self)._handle_exception(exception)
  File "/Users/guaka/playground/odoo/openerp/http.py", line 1229, in get_response
  File "/Users/guaka/playground/odoo/openerp/http.py", line 1105, in flatten
  File "/Users/guaka/playground/odoo/openerp/http.py", line 1100, in render
  File "/Users/guaka/playground/odoo/openerp/addons/base/ir/ir_ui_view.py", line 1002, in render
    return self.pool[engine].render(cr, uid, id_or_xml_id, qcontext, loader=loader, context=context)
  File "/Users/guaka/playground/odoo/openerp/addons/base/ir/ir_qweb.py", line 246, in render
    return self.render_node(self.get_template(id_or_xml_id, qwebcontext), qwebcontext)
  File "/Users/guaka/playground/odoo/openerp/addons/base/ir/ir_qweb.py", line 186, in get_template
    raise_qweb_exception(QWebTemplateNotFound, message="Loader could not find template %r" % name, template=origin_template)
  File "/Users/guaka/playground/odoo/openerp/addons/base/ir/ir_qweb.py", line 184, in get_template
    xml_doc = qwebcontext.loader(name)
  File "/Users/guaka/playground/odoo/openerp/addons/base/ir/ir_ui_view.py", line 1000, in loader
    return self.read_template(cr, uid, name, context=context)
  File "/Users/guaka/playground/odoo/openerp/tools/cache.py", line 21, in lookup
    r = self.lookup(self2, cr, *args, **argv)
  File "/Users/guaka/playground/odoo/openerp/tools/cache.py", line 86, in lookup
    value = d[key] = self.method(self2, cr, *args, **argv)
  File "/Users/guaka/playground/odoo/openerp/addons/base/ir/ir_ui_view.py", line 845, in read_template
    view_id = self.pool['ir.model.data'].xmlid_to_res_id(cr, uid, xml_id, raise_if_not_found=True)
  File "/Users/guaka/playground/odoo/openerp/addons/base/ir/ir_model.py", line 887, in xmlid_to_res_id
    return self.xmlid_to_res_model_res_id(cr, uid, xmlid, raise_if_not_found)[1]
  File "/Users/guaka/playground/odoo/openerp/addons/base/ir/ir_model.py", line 879, in xmlid_to_res_model_res_id
    return self.xmlid_lookup(cr, uid, xmlid)[1:3]
  File "/Users/guaka/playground/odoo/openerp/tools/cache.py", line 21, in lookup
    r = self.lookup(self2, cr, *args, **argv)
  File "/Users/guaka/playground/odoo/openerp/tools/cache.py", line 49, in lookup
    value = d[key] = self.method(self2, cr, *args)
  File "/Users/guaka/playground/odoo/openerp/addons/base/ir/ir_model.py", line 869, in xmlid_lookup
    raise ValueError('External ID not found in the system: %s' % (xmlid))
QWebTemplateNotFound: External ID not found in the system: web.login



same here. starting from source directly without sudo python setup.py install, dependencies installed manually

David Arnold
on 7/7/14, 1:37 AM
Mario Gielissen
On 9/11/14, 3:56 PM

Passlib is missing, try this (worked for me):

sudo apt-get install python-passlib

Thanks Mario Gielissen, it was ok.

OpenERP Vietnam
on 10/1/14, 11:52 PM

Thanks you It works... New entry in linked git's issue https://github.com/odoo/odoo/issues/953

Savoir-faire Linux, Bruno JOLIVEAU
on 10/9/14, 2:53 PM

Great thanks to you

Mind & Go, Mind And Go
on 10/28/14, 8:27 PM
Rakesh Sindhav
On 9/2/14, 3:07 AM

You have to follow some steps when you get this type of error.

1) First of all clear the browser history.

2) run the command "createdb odoo" or you can use your old database also.

3) run the openerp-server using this command

  • ./openerp-server -d odoo -u base

Note : Don't Forget to clear your browser history otherwise it will again throw an error.


Thanks Rakeshkumar! That solved my "Access Denied" problem when trying to create a new DB.

Michael Watchorn
on 10/21/14, 2:40 PM
Kasper Souren
On 8/31/14, 5:27 PM

On this Ubuntu 14.04 machine it's running as user odoo. There was also an odoo database that was somewhat created during the installation process which halted because of missing modules (at least pyPdf, possibly more). I did a `dropdb odoo` from the shell to get things rolling again.

David Monjoie (dmo)
On 8/13/14, 6:12 AM

Try adding "-u all" when calling odoo.py, I got the same problem minutes ago and that solved it.

thanks @ David, Its work..fine

Ankit H Gandhi(AHG)
on 2/21/15, 2:35 AM
On 1/9/18, 7:38 AM

Restore the db to a new db and try with upgrade all modules 


Nilmar Shereef

--Nilmar Shereef--
| 5 4 8
Bur Dubai, United Arab Emirates
--Nilmar Shereef--

Python Developer. Odoo Techno Functional Consultant.

Nilmar Shereef
On 5/31/17, 1:53 AM

This error will raise for many reasons. Majority of them listed above. Another reason of this module is empty manifest file [ __openerp__.py ] in your addons. So please check that possibility also.




Just in case some gets this problem today in odoo 10:

it says in the documentation of the reportsthat the parameter "name" is just a descriotion and it is ot used, see https://www.odoo.com/documentation/10.0/reference/reports.html.

After hours of search documentations and tring so many stuf, itasbeen found that the name of the report should be <DirectoryOfFile>.NameOfYourChoice.

See here :


Hope this would help any one else that as just changed the name of the directory of his module.

David Arnold
On 7/7/14, 1:57 AM

strangely setting the database password to "admin" bypassed that error... probably it's an old fallback method as the "/web/login?redirect" is different from the one that passes on the runbot which is (second occurrence when searching "redirect"): http://runbot.odoo.com/runbot/static/build/05252-8-0-cbe2db/logs/job_10_test_base.txt in the sam line you get login:admin key:admin which led me to think that key might refer to password, and obviously it works...

Could you please open an issue on github for that? https://github.com/odoo/odoo/issues

opene issue: https://github.com/odoo/odoo/issues/953

David Arnold
on 7/7/14, 2:27 AM

yes , up till today , 2015/Mar/11, downloaded latest source code from nightly build version 8.0 , after created new odoo db, still face the issue , u can by pass when the password of the admin is "admin" !

Kalmen Chia / E-Global SCM Solutions Sdn Bhd
on 3/11/15, 2:35 AM

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

4 follower(s)


Asked: 7/2/14, 8:45 AM
Seen: 37837 times
Last updated: 1/9/18, 7:38 AM