summaryrefslogtreecommitdiff
path: root/qpid/doc/book/src/Qpid-Troubleshooting-Guide.xml
blob: cc642f2cdb8b37f2a6c7c4b7cd38f6dfe6aa9bcf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
<?xml version="1.0" encoding="utf-8"?>
<!--
 
 Licensed to the Apache Software Foundation (ASF) under one
 or more contributor license agreements.  See the NOTICE file
 distributed with this work for additional information
 regarding copyright ownership.  The ASF licenses this file
 to you under the Apache License, Version 2.0 (the
 "License"); you may not use this file except in compliance
 with the License.  You may obtain a copy of the License at
 
   http://www.apache.org/licenses/LICENSE-2.0
 
 Unless required by applicable law or agreed to in writing,
 software distributed under the License is distributed on an
 "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 KIND, either express or implied.  See the License for the
 specific language governing permissions and limitations
 under the License.
 
-->

<section>

  <title>
      Qpid Troubleshooting Guide
    </title>

          <section role="h2" id="QpidTroubleshootingGuide-I-27mgettingajava.lang.UnsupportedClassVersionErrorwhenItrytostartthebroker.Whatdoesthismean-3F"><title>
            I'm getting a java.lang.UnsupportedClassVersionError when I
            try to start the broker. What does this mean ?
          </title>

	  <para>
            The QPID broker requires JDK 1.5 or later. If you're seeing this
            exception you don't have that version in your path. Set JAVA_HOME
            to the correct version and ensure the bin directory is on your
            path.
          </para><para>
            java.lang.UnsupportedClassVersionError:
            org/apache/qpid/server/Main (Unsupported major.minor version
            49.0)
            at
            java.lang.ClassLoader.defineClass(Ljava.lang.String;[BIILjava.security.ProtectionDomain;)Ljava.lang.Class;(Unknown
            Source)
            at
            java.security.SecureClassLoader.defineClass(Ljava.lang.String;[BIILjava.security.CodeSource;)Ljava.lang.Class;(SecureClassLoader.java:123)

            at
            java.net.URLClassLoader.defineClass(Ljava.lang.String;Lsun.misc.Resource;)Ljava.lang.Class;(URLClassLoader.java:251)

            at
            java.net.URLClassLoader.access$100(Ljava.net.URLClassLoader;Ljava.lang.String;Lsun.misc.Resource;)Ljava.lang.Class;(URLClassLoader.java:55)

            at java.net.URLClassLoader$1.run()Ljava.lang.Object;
            (URLClassLoader.java:194)
            at
            jrockit.vm.AccessController.do_privileged_exc(Ljava.security.PrivilegedExceptionAction;Ljava.security.AccessControlContext;I)Ljava.lang.Object;(Unknown
            Source)
            at
            jrockit.vm.AccessController.doPrivileged(Ljava.security.PrivilegedExceptionAction;Ljava.security.AccessControlContext;)Ljava.lang.Object;(Unknown
            Source)
            at
            java.net.URLClassLoader.findClass(Ljava.lang.String;)Ljava.lang.Class;(URLClassLoader.java:187)

            at
            java.lang.ClassLoader.loadClass(Ljava.lang.String;Z)Ljava.lang.Class;
            (Unknown Source)
            at
            sun.misc.Launcher$AppClassLoader.loadClass(Ljava.lang.String;Z)Ljava.lang.Class;(Launcher.java:274)

            at
            java.lang.ClassLoader.loadClass(Ljava.lang.String;)Ljava.lang.Class;

            (Unknown Source)
            at
            java.lang.ClassLoader.loadClassFromNative(II)Ljava.lang.Class;

            (Unknown Source)
          </para>

<!--h2--></section>

	  <section role="h2" id="QpidTroubleshootingGuide-I-27mhavingaproblembindingtotherequiredhost-3Aportatbrokerstartup-3F"><title>
            I'm having a problem binding to the required host:port at
            broker startup ?
          </title>
	  <para>
            This error probably indicates that another process is using the
            port you the broker is trying to listen on. If you haven't
            amended the default configuration this will be 5672. To check
            what process is using the port you can use 'netstat -an |grep
            5672'.
          </para><para>
            To change the port your broker uses, either edit the config.xml
            you are using. You can specify an alternative config.xml from the
            one provided in /etc by using the -c flag i.e. qpid-server -c
            &lt;my config file path&gt;.
          </para><para>
            You can also amend the port more simply using the -p option to
            qpid-server i.e. qpid-server -p &lt;my port number'
          </para>
<!--h2--></section>

	  <section role="h2" id="QpidTroubleshootingGuide-I-27mhavingproblemswithmyclasspath.HowcanIensurethatmyclasspathisok-3F"><title>
            I'm having problems with my classpath. How can I ensure that
            my classpath is ok ?
          </title>
	  <para>
            When you are running the broker the classpath is taken care of
            for you, via the manifest entries in the launch jars that the
            qpid-server configuration file adds to the classpath.
          </para><para>
            However, if you are running your own client code and experiencing
            classspath errors you need to ensure that the client-launch.jar
            from the installed Qpid lib directory is on your classpath. The
            manifest for this jar includes the common-launch.jar, and thus
            all the code you need to run a client application.
          </para>
	  </section>

	  <section role="h2" id="QpidTroubleshootingGuide-Ican-27tgetthebrokertostart.HowcanIdiagnosetheproblem-3F"><title>
            I can't get the broker to start. How can I diagnose the
            problem ?
          </title>
	  <para>
            Firstly have a look at the broker log file - either on stdout or
            in $QPID_WORK/log/qpid.log or in $HOME/log/qpid.log if you
            haven't set QPID_WORK.
          </para><para>
            You should see the problem logged in here via log4j and a stack
            trace. Have a look at the other entries on this page for common
            problems. If the log file includes a line like:
          </para><para>
            "2006-10-13 09:58:14,672 INFO [main] server.Main (Main.java:343)
            - Qpid.AMQP listening on non-SSL address 0.0.0.0/0.0.0.0:5672"
          </para><para>
            ... then you know the broker started up. If not, then it didn't.
          </para>
<!--h2--></section>

	  <section role="h2" id="QpidTroubleshootingGuide-WhenItrytosendmessagestoaqueueI-27mgettingaerrorasthequeuedoesnotexist.WhatcanIdo-3F"><title>
            When I try to send messages to a queue I'm getting a error as
            the queue does not exist. What can I do ?
          </title>
	  <para>
            In Qpid queues need a consumer before they really exist, unless
            you have used the virtualhosts.xml file to specify queues which
            should always be created at broker startup. If you don't want to
            use this config, then simply ensure that you consume first from
            queue before staring to publish to it. See the entry on our
            <xref linkend="qpid_Qpid-Java-FAQ"/> for more details of using the virtualhosts.xml route.
          </para>
<!--h2--></section>

</section>