Re: class loader interdependencies

2004-06-25 Thread Ankit Doshi
Let say, my physical class file is located in /common and I put a soft link to this in the WEB-INF/classes of a webapp. (using the ln command - RH Linux). In this case, this class would be loaded by which class loader? The classloader of the webapp or the common class loader? Ankit - Original

Re: problem with classpath

2004-06-25 Thread Ankit Doshi
I wanted some info on using single instance of tomcat for managing multiple web applications. I am repeating my question below, please help me out with the same ... I am running an application for multiple clients and the setup is like the set of classes being used are common and the property file

Re: jsvc and the -server option

2004-06-25 Thread Bill Barker
The correct option is: -jvm server You can run 'jsvc -help' to see which JVM options it is able to find. Note that for at least some 1.4 JVMs, you need to upgrade the source from commons-daemon, since the version that ships with Tomcat doesn't handle detection correctly. "Patrick Glennon" <[EM

Web Host Reseller package with Tomcat support

2004-06-25 Thread Dave Kennedy
I am looking for a basic Web Host Reseller package with at least: - JSP/Servlet Support (Tomcat) - PhpMyAdmin - MySQL Database - PHP Support As an example http://www.rimuhosting.com is probably more than I require. - To u

RE: jspc

2004-06-25 Thread Jason Palmatier
Hi Paul, To specify a path for your compilation results use the -d option like so: jspc.sh -compile -d /jakarta-tomcat-5.0.25/webapps myapp/WEB-INF/classes ...the rest of you compile options... It will build any subdirs required using the directory you specify, along with the package name you gi

Subject: Re: How to handle client session information if client has sessions disabled?

2004-06-25 Thread Ben Bookey, GIStec GmbH
Is it possible to use this sort of session handling (passing the SESSION ID over HTTP) when using the Realm security feature within TC ? I have noticed that there is a cookie saved, JSESSIONID which stores the SessionID. Would appreciate any info. Ben --

How to configure a Realm in the server.xml which doesnt ask the browser to store a session.

2004-06-25 Thread Ben Bookey, GIStec GmbH
Dear List, We have implemented the Realm with Oracle. It works fine. (see below from TC sample server.xml) However, we are wondering about upgrading our system so we dont use cookies. We believe (after earlier questions on the list! thanks! ) that this should be easy to achieve. Howe

Re: Session replication in tomcat5

2004-06-25 Thread Filip Hanik - Dev
yes, especially mcast address, that essentially is what defines a group of members Filip - Original Message - From: "Gergely Zayzon" <[EMAIL PROTECTED]> To: "'Tomcat Users List'" <[EMAIL PROTECTED]> Sent: Friday, June 25, 2004 4:11 PM Subject: RE: Session replication in tomcat5 > Thank

RE: Session replication in tomcat5

2004-06-25 Thread Gergely Zayzon
Thanks, it sounds promising (just need to survive 'till that time ;-) Anyway, is there anything I need to know or be aware of when I configure many clusters between two tomcats? Should the (mcast and the tcp) ports be different for each of them? Thanks, Gergely Zayzon - N

Re: Session replication in tomcat5

2004-06-25 Thread Filip Hanik - Dev
depends on how much money you can donate, he he ;) no idea actually, I'm tied up most of july, so I think it will be a few months as I have some smaller things I need to fix first Filip - Original Message - From: "Gergely Zayzon" <[EMAIL PROTECTED]> To: "'Tomcat Users List'" <[EMAIL PRO

RE: Session replication in tomcat5

2004-06-25 Thread Gergely Zayzon
Thanks Filip, for the prompt mail! Just out of curiosity; any scheduled date when it will happen? Thanks, Gergely Zayzon - Network Administrator Harras Network CVBA Phone: +36 30 3903740 Fax: +36 1 4092088 Email: [EMAIL PROTECTED] Web: http://www.harras.be > -Origina

Re: Problem using jsp to handle 404s from nonjsps

2004-06-25 Thread Joseph Shraibman
Akash Jauhar wrote: Assuming that you have an apache in front of tomcat configure apache to specify that 404.jsp is your custom page for handling 404 errors for content that is served by apache. This should help you log all broken links as well as missing images and other content Hope this helps Ap

Re: Session replication in tomcat5

2004-06-25 Thread Filip Hanik - Dev
it is currently one of the draw backs that the cluster element is inside the a host, cause in your scenario you would need to configure several clusters, one for each host. I'm currently slammed with work, but we started doing some serious refatoring for the Tomcat 5.1 version and this is a stron

RE: ROOT/index.jsp- REASON WHY EDITING FAILS

2004-06-25 Thread Spiegelberg, Eric
I have been experimenting with precompiling my jsp's on Tomcat 5 and have a few questions. Most of my questions are based on the information on: http://jakarta.apache.org/tomcat/tomcat-5.0-doc/jasper-howto.html 1) What is the difference between using the jspc target (with compile="true") as

Session replication in tomcat5

2004-06-25 Thread Gergely Zayzon
All, I'm wondering what it really means that the element is nested inside a element? Our servers are load balanced on network layer level, without any software interaction, so actually all of the tomcat instances are running separately without using the built-in load balancing. But since the web

read it immediatelly

2004-06-25 Thread tomcat-user
you won the rk! Norton AntiVirus Deleted1.txt Description: plain/text - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]

RE: Problem using jsp to handle 404s from nonjsps

2004-06-25 Thread Akash Jauhar
Assuming that you have an apache in front of tomcat configure apache to specify that 404.jsp is your custom page for handling 404 errors for content that is served by apache. This should help you log all broken links as well as missing images and other content Hope this helps Apache directive tha

Problem using jsp to handle 404s from nonjsps

2004-06-25 Thread Joseph Shraibman
I have a 404.jsp for logging broken links. I get the missing page by doing this: String url = request.getRequestURL().toString(); This works when the missing page is a jsp. When it is something else like a .html, my url variable ends up with the url to my 404 handler. I assume this is a pro

Session Attributes getting lost

2004-06-25 Thread Sumpter, Chuck
Title: Session Attributes getting lost Environment:     Tomcat5.0.25     IIS on Win2k     JK2-2.0.4     JDK - 1.4.2_04     Server 1 runs IIS/JK2 with lb type round robin routing to Server 2 that has 4 Tomcat5 instances.     A  .do is invoked and works fine u

Re: JSP compilation question|Can I delete work folder ?

2004-06-25 Thread Filip Hanik - Dev
it is based on timestamp, ie, when you restart tomcat, it does not recompile your JSP file Filip - Original Message - From: "Akash Jauhar" <[EMAIL PROTECTED]> To: "Tomcat Users List" <[EMAIL PROTECTED]> Sent: Friday, June 25, 2004 1:08 PM Subject: JSP compilation question|Can I delete wor

JSP compilation question|Can I delete work folder ?

2004-06-25 Thread Akash Jauhar
List I wanted to automate my war deployment process and wanted to delete the work folder every time I restart tomcat. However I have some confusion around when does a JSP get compiled. Does a JSP get compiled at every restart of tomcat or only when its timestamp is changed (indicating that th

Re: Tomcat exits without any known reason

2004-06-25 Thread Peter Lin
I'm not aware of any new JVM patch for solaris 9 this year, so you should be up to date. it's unlikley the JVM instability is caused by solaris patch. are you using database drivers that are native? I know both Oracle and DB2 native drivers have been known to cause the VM to quick due to driver se

Re: development/production configuration for JSPs

2004-06-25 Thread Emerson Cargnin
a simple yes/no will be enough... Emerson Cargnin wrote: May I set the following in the web.xml of the CATALINA_HOME/conf ??? Instead of put this in every application??? development false reloading false

RE: SingleSignOn

2004-06-25 Thread Summers, Bert W.
Looking at SingleSignOn sessionEvent code it seems that if you invalidate a session it does kill all the sessions. Only if the session died from timeout do other sessions survive. This is from TC5.0.25 // Was the session destroyed as the result of a timeout? // If so, we'll just remove the expire

RE: Determination if a client has sessions enabled or not.

2004-06-25 Thread Robert Harper
I agree that cookies are a very useful tool. My point is that we have two conflicting interests, the user's desire to protect themselves from malicious attacks and loss of privacy and the developer's need to keep information about the current session. If you want to work in all cases, then some oth

Re: Determination if a client has sessions enabled or not.

2004-06-25 Thread Mike Fowler
I think it's a good idea to try as much as possible to cater to cookieless users, differing browsers and so on as this allows you to create a single web-app that will function and look the same across a multitude of browsers. As a Mozilla user I come across site after site that takes advantage

RE: Determination if a client has sessions enabled or not.

2004-06-25 Thread Woodchuck
it used to be more common to have warnings on websites that say cookies are required. nowadays, these warnings are not there anymore and it's assumed cookies will be available. and if cookies are disabled by the user, and the website requires it, the user will be promptly halted. i'm coming from

Re: How to handle client session information if client has sessions disabled?

2004-06-25 Thread Mike Fowler
Sorry, you're quite right it does remain on the server, I'm just being silly. The session.setAttribute() works because the server is remembering the session by the JSESSIONID which is now in the URL of the request rather than in a cookie header being sent by the request. -Mike Fowler "I could b

Re: How to handle client session information if client has sessions disabled?

2004-06-25 Thread Filip Hanik - Dev
whether there is a session on the server or not, has nothing to do with the client having cookies turned off. you can run sessions from the client using url rewriting, when cookies are turned off. response.encodeURL() is how you do it this appends a ;JSESSIONID= in your URL, and the client can

Re: How to handle client session information if client has sessions disabled?

2004-06-25 Thread Ben Bookey
Hi Mike Thanks for the reply. I think I have missed something here. I believe if we store an object in the session its still stored on the server, but is specific to the active user-session. I cant imagine any java objects been sent across the network to the client ... In addition, i am suprise

tomcat config

2004-06-25 Thread Lázaro Miguel Fung
Hi I'am setting apache 2..0.40 and Tomcat 4.1.29 with mod_jk2 and in httpd.d folder I have some config files setting Alias like Alias /mysql /var/www/html/phpMyAdmin-2.5.7 AuthType Basic AuthName phpMyAdmin DirectoryIndex index.php # ErrorLog logs/mysql_error_log # CustomLog lo

RE: Tomcat exits without any known reason

2004-06-25 Thread Guy
I installed the system about 2 months ago. I installed the "current" patch set. Do you know the patch name/number? Thanks, Guy -Original Message- From: Peter Lin [mailto:[EMAIL PROTECTED] Sent: Friday, June 25, 2004 11:58 AM To: Tomcat Users List Subject: Re: Tomcat exits without any k

RE: Getting url which submitted form

2004-06-25 Thread Mark Thias
Thank you all so much for your response and help. For my purposes, the request.getHeader("referer") seems to do the trick. Using hidden fields is another excellent suggestion. Thanks, Mark -Original Message- From: Nikola Milutinovic [mailto:[EMAIL PROTECTED] Sent: Friday, June 25, 2004

Re: Tomcat exits without any known reason

2004-06-25 Thread Peter Lin
just in case. you did install the solaris patch for the JVM right? if not, it will cause odd behavior peter On Fri, 25 Jun 2004 11:53:33 -0400, Guy <[EMAIL PROTECTED]> wrote: > > Please! Any ideas? > > Thanks, > Guy > > -Original Message- > > I have a Sun box with Solaris 9. > Tom

RE: jsvc and the -server option

2004-06-25 Thread Patrick Glennon
I've pored through the docs on -X options, but have found nothing. Hadn't heard about any instability on the server VM. Anybody? Still wanting to find some way to pass this option -P -Original Message- From: QM [mailto:[EMAIL PROTECTED] Sent: Friday, June 25, 2004 10:33 AM To: [EM

RE: Tomcat exits without any known reason

2004-06-25 Thread Guy
Please! Any ideas? Thanks, Guy -Original Message- I have a Sun box with Solaris 9. Tomcat 11.9.0,REV=2002.03.02.00.35 Apache and Tomcat were installed as part of the OS. Tomcat seems to work fine, but about once per day it stops. Just exits as far as I can tell. No errors in the logs

Re: Determination if a client has sessions enabled or not.

2004-06-25 Thread Mike Fowler
I tend to agree and would advocate the use of URL encoding for all stateful web-apps. However they have the drawback of making your URL look something like: http://localhost:8080/manager/html/list;jsessionid=C76172F9BD3E29A9AFDEBDA349F853DF So you use cookies for "tidy" URLs. -Mike Fowler "I cou

Re: installing HTTPS SSL on tomcat 5.0.25

2004-06-25 Thread Terry
many thanks, that was it, in order to enable SSL one needs to add a 'keystoreFile' property to the SSL connector. Here's what mine looks like now. I copied my .keystore to the root directory of Tomcat. thanks again, -Terry On Fri, 2004-06-25 at 02:27, Bill Barker wrote: > "Terry" <[EMAIL

Re: Your archive

2004-06-25 Thread javac javac
- Original Message - From: Adam Buglass <[EMAIL PROTECTED]> Date: 25 Jun 2004 09:00:56 +0100 To: Tomcat Users List <[EMAIL PROTECTED]> Subject: Re: Your archive > Lol, it's a virus. > > Any such unsolicited e-mails can be treated as viruses. > > If in doubt delete them. > > If it's not

RE: Determination if a client has sessions enabled or not.

2004-06-25 Thread Robert Harper
It may also be asked if it is bad practice to require the user to enable pop-ups. I would think not as many businesses force internal users to disable cookies and pop-ups. If your application requires either then it is not always useable. Food for thought. Robert S. Harper 801.265.8800 ex. 255 >

Re: jsvc and the -server option

2004-06-25 Thread QM
:I can't seem to figure out how to pass the -server option to the jvm via :jsvc. Jsvc only recognizes -D and -X values getting passed, and I'd :obviously prefer to run the server version of the VM. It's a long shot, but many switches have "-X" counterparts. It's worth a look. :I can't believe

Re: Determination if a client has sessions enabled or not.

2004-06-25 Thread Woodchuck
hi, this begs the question, is it bad practice to require users to enable cookies? --- Mike Fowler <[EMAIL PROTECTED]> wrote: > Ben, > > I don't know of any way of checking (someone correct me if I'm > wrong!). > What I have done is to attach an attribute to the session, redirect > to a > sma

jsvc and the -server option

2004-06-25 Thread Patrick Glennon
I've seen a few references to this issue, but no solution. I can't seem to figure out how to pass the -server option to the jvm via jsvc. Jsvc only recognizes -D and -X values getting passed, and I'd obviously prefer to run the server version of the VM. I can't find an equivalent command to spec

Re: help with tomcat 5 - mod_jk2 - apache 2

2004-06-25 Thread Carsten Lex
Hi, perhaps it is only a typo, but stickSession=1 is wrong should be stickySession=1 Another thing is naming of jvmRoute="localhost:1009". We didn't include port here. The jk2.properties file is empty in our configuration. hope this helps a bit. Carsten fix wrote: Hey there, I've been searching fo

Re: Determination if a client has sessions enabled or not.

2004-06-25 Thread Mike Fowler
Ben, I don't know of any way of checking (someone correct me if I'm wrong!). What I have done is to attach an attribute to the session, redirect to a small .jsp page with a tag surronding a form that automatically submits back to the servlet. The servlet can then check if the attribute is stil

Re: How to handle client session information if client has sessions disabled?

2004-06-25 Thread Mike Fowler
Ben- You need to encode your URLs so that the session ID becomes part of the URL. Use the second line for redirects. httpServletResponse.encodeURL("/myapp/page2") httpServletResponse.encodeRedirectURL("/myapp/page2") -Mike Fowler "I could be a genius if I just put my mind to it, and I, I could do

RE: jspc

2004-06-25 Thread Woodchuck
hi, not sure if this is related but Tomcat is now using Ant to compile .jsp files and there was something about a memory leak in the internal javac that Ant uses to compile. the 'fix' was to set fork = true for this Ant compilation process so that it does not corrupt Tomcat's jvm by using a separ

RE: TC5 / Solaris CPU usage

2004-06-25 Thread Holly, Michael
Looks like my answer was a bit late... ;^) So ditto to what Pete said. That's what I get for not reading all my email first before I answer. Michael -Original Message- From: Holly, Michael [mailto:[EMAIL PROTECTED] Sent: Friday, June 25, 2004 9:00 AM To: Tomcat Users List Subject: RE:

RE: TC5 / Solaris CPU usage

2004-06-25 Thread Holly, Michael
Dave You stated that after you start you app CPU goes to 50%. Have you tried bringing up TC without starting your app? Does load go to 50% then? I would try bringing up the server without the app started and see what the load is and then using TC manager start the app and see the effect. Maybe s

How to handle client session information if client has sessions disabled?

2004-06-25 Thread Ben Bookey
Dear list, What is the normal way of persisting session type information if the client has sessions/cookies disabled. I guess if he's got sessions switched off, then session.getId() will return null ? The userID must therefore be invented somehow on the server, and passed between the se

RE: class loader interdependencies

2004-06-25 Thread Cox, Charlie
Classes in /common and /shared can not see classes in /WEB-INF. A class loaded by the nth classloader will not see any classes loaded by (n-1) classloader. However, it will see classes loaded by n+1 loader. This is the classloader hierarchy. Any classloader only has one parent to which it can deleg

Determination if a client has sessions enabled or not.

2004-06-25 Thread Ben Bookey
Dear List, I would like to check if a client has cookies/sessions enabled in the start page of my webapp. whats the best way of doing this? regards Ben - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mai

Re: TC5 / Solaris CPU usage

2004-06-25 Thread David Parfitt
ok - it seems to happen after the first click that reaches the app (ANY PAGE). There's not that much going on in the app except for some communications with Oracle (and we are very strict with returning connections to the pool etc). The pool only has about 10 connections open. We do however have a

class loader interdependencies

2004-06-25 Thread Larry Levin
Hi all; I am trying to share some jars across multiple web-apps, each of which runs in its own environment (i.e, JVM). To do this I make use of the CATALINA_BASE environment variable. My problem is in regards to class loading. I have a number of jar files that are common to each webapp but I al

help with tomcat 5 - mod_jk2 - apache 2

2004-06-25 Thread fix
Hey there, I've been searching for a long time know and can't seem to find a solution. I'm settin up a new production server (pIV 4 gig mem) and wanted to run 1 apache in front of several tomcat instances. I've set the whole thing up and it works almost, only the stickySession attribute isn't gett

Re: TC5 / Solaris CPU usage

2004-06-25 Thread Peter Lin
Over the last 2 years, I've done a lot of testing with tomcat4 and 5 on linux, windows and solaris. A clean tomcat install on a X1 rackmount running solaris 9 does not exhibit this kind of behavior. where there's no load on the system, the java process is typically below 1%. As other's have stated

RE: TC5 / Solaris CPU usage

2004-06-25 Thread Peter Guyatt
Hi There, Have you tried just running Tomcat without you web application. It could be configuration? I think TC5 has extra configuration files, maybe its a configuration issue. Thanks Pete -Original Message- From: David Parfitt [mailto:[EMAIL PROTECTED] Sent: 25 June 2004 12:

RE: TC5 / Solaris CPU usage

2004-06-25 Thread David Parfitt
No luck. Same results. Cheers- Dave --- Peter Guyatt <[EMAIL PROTECTED]> wrote: > Hi There, > > Try running in client mode. > > Thanks > > Pete > > -Original Message- > From: David Parfitt [mailto:[EMAIL PROTECTED] > Sent: 25 June 2004 11:33 > To: Tomcat Users List > Subject: RE

RE: jspc

2004-06-25 Thread Evgeny Gesin
Hi, when I run jspc from command line ${tomcat_home}/bin/jspc.sh -s -l -uriroot ${tomcat_home}/webapps/myapp -d ${tomcat_home}/work it generates .class files according to hierarchy* of JSP files and that what I expected. When I run this And task it generates .java files - and all

RE: TC5 / Solaris CPU usage

2004-06-25 Thread Peter Guyatt
Hi There, Try running in client mode. Thanks Pete -Original Message- From: David Parfitt [mailto:[EMAIL PROTECTED] Sent: 25 June 2004 11:33 To: Tomcat Users List Subject: RE: TC5 / Solaris CPU usage I've tried 5.0.25 - same results + other non-related issues so we ended up sti

RE: TC5 / Solaris CPU usage

2004-06-25 Thread David Parfitt
I've tried 5.0.25 - same results + other non-related issues so we ended up sticking with 5.0.16. Cheers - Dave "Dale, Matt" <[EMAIL PROTECTED]> wrote: We use tomcat 5 on solaris 9 without this problem. Have you considered upgrading to the latest stable release 5.0.25? Ta Matt -Original

RE: jspc

2004-06-25 Thread Peter Guyatt
Hi There, The memory leak was in JDK1.4.1 and was to do with Strings and StringBuffer sharing memory for performance. Use JDK1.4.2 to ensure that this problem does not happen. Pete -Original Message- From: Nick Curry [mailto:[EMAIL PROTECTED] Sent: 25 June 2004 11:08 To: Tomcat

RE: jspc

2004-06-25 Thread Nick Curry
I seem to remember something about a known memory leak in javac 1.4 (not sure which version), which might affect you if you use javac and have many JSPs to compile - so that might be another argument for precompiling your jsps... Nick -Original Message- From: Michiel Toneman [mailto:[EMA

tomcat-user@jakarta.apache.org

2004-06-25 Thread Evgeny Gesin
I just tried a similar 'jspc' command and it generates all .java under the same output directory - there is no original .jsp hierarchy. How to tell jspc to generate/compile files according to JSP directory hierarchy? Evgeny Javadesk Hi. In addition to sacing resources on the webserver it also

jsp:useBean problem (bug?) with Jasper

2004-06-25 Thread Michiel Toneman
We are using an ant task to precompile our JSP's. Since we have switched from 5.0.19 to 5.0.25 on our development environment, many JSP files that use the jsp:useBean tag no longer compile. The error I'm getting is: BUILD FAILED: /compile/project/build.xml:209: org.apache.jasper.JasperException

Re: jspc

2004-06-25 Thread Michiel Toneman
A good reason to precompile your JSP files is to make sure you don't accidentally have broken JSP files on production. You then know *before* deployment if any changes to your JSP files or the java classes they belong to cause breakage. Michiel Paul Wallace wrote: Hi, Yes..that is what I thoug

RE: TC5 / Solaris CPU usage

2004-06-25 Thread Dale, Matt
We use tomcat 5 on solaris 9 without this problem. Have you considered upgrading to the latest stable release 5.0.25? Ta Matt -Original Message- From: David Parfitt [mailto:[EMAIL PROTECTED] Sent: 24 June 2004 22:40 To: [EMAIL PROTECTED] Subject: TC5 / Solaris CPU usage Hi - I'm hav

RE: Tomcat and mod_webapp?

2004-06-25 Thread Keates, Mark
Hi, mod_webapp was setup by default when I installed Suse 8.2's Apache & Tomcat. (apache-1.3.27 and jakarta-tomcat-4.1.18) Using the http://myhost:8080/examples/ reference brought up the expected tomcat page but removing the ':8080' results in nothing as Apache does not redirect this to Tomcat?

OT : Convert Korean Access mdb to MySQL

2004-06-25 Thread Eric Noel
im trying to convert an access file to mysql db so i decided to use jdbc/odbc to access mdb then insert them to mysql and display first to see if my jsp (see code below) can really fetch korean characters. but it seems it doesnt, how come it display |??? instead of the korean characters? do

Re: Tomcat JK2 Question

2004-06-25 Thread bastien.devos
If you have Apache, I guess it serves static requests, so you could use. Simply let http://someserv.com/index.html to be served by Apache and put for example an index.html with this content : http://someserv/someapp";> Apache will redirect instantly to your webapp. Bastien. Mark Lowe wrote: In fa

Re: Your archive

2004-06-25 Thread Adam Buglass
Lol, it's a virus. Any such unsolicited e-mails can be treated as viruses. If in doubt delete them. If it's not from a trusted source ( a mailing list isn't very trustworthy in this sense ) and contains an attachment delete it especially if that attachment is an executeable (.exe). :-) On Fri,

Re: Your archive

2004-06-25 Thread Adam Buglass
On Fri, 2004-06-25 at 07:41, javac javac wrote: > - Original Message - > From: [EMAIL PROTECTED] > Date: Thu, 24 Jun 2004 11:53:45 +0530 > To: [EMAIL PROTECTED] > Subject: Re: Your archive > > > Please read the attached file. > > > > > > >

RE: Load balancing question

2004-06-25 Thread Kommuru, Bhaskar
Hi Balaji, Are you trying with or looking for any loadbalancing? If you are trying, what you are trying with? If you are looking for here is some link that should work greate for you. But obviously, you find .. no good documentation. mod_jk2 documentation http://jakarta.apache.org/tomcat/tomcat-3