如何检查xml rpc是否在OpenERP7上工作?

如何检查xml rpc是否在OpenERP7上工作?,openerp,xml-rpc,odoo,Openerp,Xml Rpc,Odoo,我试图确定我的服务器是否接受xmlrpc请求。我所知道的是,当我尝试访问http://my_ip:8069/xmlrpc/common或http://my_ip:8069/xmlrpc/object在我的浏览器上,我收到一个“找不到文件错误”。这就是预期的吗? 要启动xml rpc支持,是否必须使用任何标志启动服务器? 这是我的openerp-server.conf admin_passwd = my_pass db_host = False db_port = False db_user =

我试图确定我的服务器是否接受xmlrpc请求。我所知道的是,当我尝试访问
http://my_ip:8069/xmlrpc/common
http://my_ip:8069/xmlrpc/object
在我的浏览器上,我收到一个“找不到文件错误”。这就是预期的吗?
要启动xml rpc支持,是否必须使用任何标志启动服务器?

这是我的openerp-server.conf

admin_passwd = my_pass
db_host = False
db_port = False
db_user = openerp
db_password = False
addons_path = /opt/openerp/v7/addons,/opt/openerp/v7/web/addons,/home/lfc/openerp/v7/addons
;Log settings
logfile = /var/log/openerp/openerp-server.log
; log_level = error
log_level = debug
我的开场白是:

#!/bin/sh

### BEGIN INIT INFO
# Provides:             openerp-server
# Required-Start:       $remote_fs $syslog
# Required-Stop:        $remote_fs $syslog
# Should-Start:         $network
# Should-Stop:          $network
# Default-Start:        2 3 4 5
# Default-Stop:         0 1 6
# Short-Description:    Enterprise Resource Management software
# Description:          Open ERP is a complete ERP and CRM software.
### END INIT INFO

PATH=/bin:/sbin:/usr/bin
DAEMON=/opt/openerp/v7/server/openerp-server
NAME=openerp-server
DESC=openerp-server

# Specify the user name (Default: openerp).
USER=openerp

# Specify an alternate config file (Default: /etc/openerp-server.conf).
CONFIGFILE="/etc/openerp-server.conf"

# pidfile
PIDFILE=/var/run/$NAME.pid

# Additional options that are passed to the Daemon.
DAEMON_OPTS="-c $CONFIGFILE"
# Added option to debug
#DAEMON_OPTS="-c $CONFIGFILE --debug --log-level=debug"

# Log File
LOGFILE=/var/log/openerp/openerp-server.log


[ -x $DAEMON ] || exit 0
[ -f $CONFIGFILE ] || exit 0

checkpid() {
    [ -f $PIDFILE ] || return 1
    pid=`cat $PIDFILE`
    [ -d /proc/$pid ] && return 0
    return 1
}

case "${1}" in
        start)
                #Check if deamon is already running
                checkpid
                if [ "$pid" != "" ]; then
                        echo "$NAME already running with pid $pid."
                else
                #Only starts if not running
                echo -n "Starting ${DESC}: "
                start-stop-daemon --start --quiet --pidfile ${PIDFILE} \
                        --chuid ${USER} --background --make-pidfile \
                        --exec ${DAEMON} -- ${DAEMON_OPTS} --logfile=${LOGFILE}

                echo "${NAME}, OK."
                fi
                ;;

        stop)
                echo -n "Stopping ${DESC}: "

                start-stop-daemon --stop --quiet --pidfile ${PIDFILE} \
                        --oknodo

                #Check existence of PID file. If exists, then remove it
                checkpid
                if [ "$pid" != "" ]; then
                `rm ${PIDFILE}`
                echo -n "${PIDFILE} removed "
                fi

                echo "${NAME}, Stoped!"
                ;;

        restart|force-reload)
                echo -n "Restarting ${DESC}: "

                start-stop-daemon --stop --quiet --pidfile ${PIDFILE} \
                        --oknodo
                echo -n "\n${NAME}: STOPPED"
                sleep 1


                #Check existence of PID file. If exists, then remove it
                checkpid
                if [ "$pid" != "" ]; then
                `rm ${PIDFILE}`
                echo -n "\n${PIDFILE} REMOVED "
                fi
                sleep 1

                start-stop-daemon --start --quiet --pidfile ${PIDFILE} \
                        --chuid ${USER} --background --make-pidfile \
                        --exec ${DAEMON} -- ${DAEMON_OPTS}

                echo "\n${NAME}: STARTED\n"
                ;;

        *)
                N=/etc/init.d/${NAME}
                echo "Usage: ${NAME} {start|stop|restart|force-reload}" >&2
                exit 1
                ;;
esac

exit 0

您必须使用有效数据访问它

Common(
xmlrpc/Common
)用于连接,Object(
xmlrpc/Object
)用于访问表和函数(模块)

为此,您可以使用Python、PHP、Java等创建api

例如,选中此项要选中此项,您可以使用project,它可以用作使用xml rpc或json rpc的OpenERP/Odoo的lib或CLI客户端

因此,要测试您的连接:

$ pip install openerp_proxy  # also install IPython if you like it
$ openerp_proxy   # this will openen python/IPython shell
>>> db = session.connect()     # This will ask you required info for connection
>>> db.registered_objects      # this should return list of registered Openerp/Odoo models

希望这会有所帮助

,但您说我的openerp-server.conf中不需要任何附加标志。我的问题是,我试图按照这些指令()使用ApacheJMeter测试我的模块,但一直出现错误500。当我尝试使用浏览器访问时,我得到了404,因此我想知道我是否没有做错任何事情……该教程中的xml代码有一个错误,更正后,一切都正常@Filipecastanhera在这里添加正确的代码作为答案,这样其他人也会使用我没有对代码做任何更改,只是出于某种原因,将其复制粘贴到JMeter“吃”了xml声明中的一个空格,这就是我得到错误500的原因。将
更改为
解决了问题。