Problems with IF then ELSE IF then ELSE
I am trying to take this logic:
if :detail_status > 0 then
return 0;
elsif :released in ('D','N') then
return 0;
else
return :amount;
end if;
end;
and put it in a form field in my rtf.
<?xdofx:if DETAIL_STATUS = 0 then sum(AMOUNT) else if RELEASED not in ('D', 'N') then sum(AMOUNT) else
sum(AMOUNT) end if?>
I should be getting a value, but instead I get 0 (zero).
If I do this:
<?xdofx:if DETAIL_STATUS > 0 then 0 else if RELEASED in ('D', 'N') then 0 else
sum(AMOUNT) end if?>
again, I get no value.
If I do this, I get two values of the same.
<?if:DETAIL_STATUS = 0 ?><?sum(AMOUNT)?><?end if?>
<?if:RELEASED != ('D' ,'N')?><?sum(AMOUNT)?><?end if?>
Help!
Susie
Here is my xml data: I do want to let you know that I do get a value for the condition that I am setting for the sum(AMOUNT), but only if it is greater than zero.
<G_MAIN>
<LEASE1>107735</LEASE1>
<LSE_CODE1>28</LSE_CODE1>
<KELEASE>003-107735-28</KELEASE>
<DOCUMENT1>89224</DOCUMENT1>
<BILL_CYCLE>3183</BILL_CYCLE>
<YEAR_BILLED>2006</YEAR_BILLED>
<DOC_TYPE>RA</DOC_TYPE>
<DOC_TYPE_DESC>RENTAL ONLY</DOC_TYPE_DESC>
<ROLODEX>4228</ROLODEX>
<LNAME>PEORIA UNIFIED SCHOOL DISTRICT</LNAME>
<EFFDATE>2004-08-10T00:00:00.000-07:00</EFFDATE>
<AMEND>0</AMEND>
<EXPDATE>2079-08-09T00:00:00.000-07:00</EXPDATE>
<BILLING_CODE>0</BILLING_CODE>
<BILLING_CODE_DESC />
<LAST_MAINT>2006-03-29T12:33:46.000-07:00</LAST_MAINT>
<BILL_PURP>0</BILL_PURP>
<TOT_AUS>0</TOT_AUS>
<BILL_PURP_DESC />
<PURP_CODE2 />
<PURP_CODE2_DESC />
<DATE_BILLED>2006-05-31T00:00:00.000-07:00</DATE_BILLED>
<BILLED_FROM>2006-08-10T00:00:00.000-07:00</BILLED_FROM>
<PURP_CODE3 />
<PURP_CODE3_DESC />
<DUE_DATE>2006-08-10T00:00:00.000-07:00</DUE_DATE>
<BILLED_THRU>2007-08-09T00:00:00.000-07:00</BILLED_THRU>
<PURP_CODE4 />
<PURP_CODE4_DESC />
<PURP_CODE5 />
<PURP_CODE5_DESC />
<TOT_ACRES>56.18</TOT_ACRES>
<KELEASE_STATUS />
<DETAIL_STATUS>1</DETAIL_STATUS>
<COUNT_HELD>0</COUNT_HELD>
<COUNT_DELETE>0</COUNT_DELETE>
<RELEASED>Y</RELEASED>
<TOT_AR_AMOUNT />
- <LIST_G_DETAIL>
- <G_DETAIL>
<FUND>0</FUND>
<SUB>4</SUB>
<DOCUMENT2>89224</DOCUMENT2>
<AMOUNT>0</AMOUNT>
<CALCULATED>N</CALCULATED>
<LAST_MAINT_2>2006-03-29T12:33:46.000-07:00</LAST_MAINT_2>
<MANUALLY_ADDED>N</MANUALLY_ADDED>
<ERROR_STATUS>106</ERROR_STATUS>
<STATUS>0</STATUS>
<ERROR_FLAG>< < < E R R O R > > ></ERROR_FLAG>
<ERROR_DESC>REQ $ RENT/ROYALTY/ADM FEE</ERROR_DESC>
</G_DETAIL>
</LIST_G_DETAIL>
</G_MAIN>
for-each G_MAIN
for-each G_DETAIL
end G_DETAIL
I have this condition in a text form field for sum(AMOUNT) after the end G_DETAIL and before end G_MAIN.
<?if:DETAIL_STATUS = 0?><?if:RELEASED != 'D' and RELEASED != 'N'?> <?xdoxslt:sum(G_DETAIL/AMOUNT)?> <?end if?><?end if?>
end G_MAIN
I do want to thank you for helping me out.
Similar Messages
-
I'm Having Problems With My iPod, Is any one else?
Hi, I was given a 5th Gen. iPod for Christmas which replaced my 3rd Gen. one. I loved my 3rd gen. and had not one problem with it. At first My new ipod was great until I started back at Uni after Christmas hols. which was the point at which i started using it very regularly and i started having some problems which are actually starting to ruin my enjoyment of my music.
I'll list them here. What i want to know is are other people having the same probs or am I an unlucky one and should try and get it exchanged/fixed as its still under warranty, or is there something else i can do? I've already restored twice to factory settings with no joy. And I have the latest iPod Software (1.1)
The Problems are as as such:
1. Often when watching videos the video will freeze but I still get sound and I can't get the video to unfreeze unless i totally restart the vid. from scratch.
2. The Battery Life meter is very intermittent it will jumps from almost empty to half full and back so i have no real idea what the battery life is like (this hasn't happened that often).
3. I often get the Warning triangle on start up and no matter how many time I do the reset (Hold off-on then select-menu) it wont reset properly (it does eventually work but after a combination of many tries, plugging it in etc. very frustrating this one)
4. Freezes on updates numerous times. Esp. If I do an iSync to my calendar etc. as well (Btw it doenst freeze necessarily on the iSync part just seems to happen more often if i have iSync setup).
5. Freezes on start-up at the apple symbol and again resets often don't work.
plus various other odd problems. At the moment I'm very disappointed with it. First time I've said that about an Apple product For a long time. Is there something i can do or are a lot of other people having similar problems, is this a send back issue or try and wait for the next firm/software to fix the problem?
Any Ideas would be much appreciated,
Thanks You
Paul (aka. Hyper Nova )1) This is because of software version 1.1. See this
thread for some options as to how to go back to 1.0,
which will correct the problem...
http://discussions.apple.com/thread.jspa?threadID=3754
59&tstart=0
2) This tends to happen after videos. Give the iPod a
minute or two to readjust. It should now be more
accurate.
3) This?
iPod shows a folder icon with exclamation
point
4) Restore the iPod
5) Try these...
iPod Only Shows An Apple Logo and Will Not Start
Up
iPod Only Shows An Apple Logo
I think 3,4, and 5 are related. Try the options I
posted for each one.
btabz
I just noticed that one of the restore methods you posted was to put it into Disk Mode First rather than just use the resstore straight off, I Have tried that and seems to have solved the problem, If it has thank you. previously I have only tried just restoring it skipping this extra step. Hope my iPod stays healthy, if it doesnt its a warrenty job me thinks any way thanks again -
I have a Verizon iPhone 4 and updated to iOS 5 on the release date. Ever since, I've had all kinds of problems with photos. In my albums, whether it be Camera Roll or Photo Stream (which I have since disabled), either the thumbnails are repeated when they shouldn't be, or they appear as a gray box. If I do happen to see a photo, it's blurry. In either case, if I choose "Edit" the correct picture appears and is clear. If I save or cancel, it either goes back to the wrong photo or the gray box. I do not sync my photos. I've searched all over the net and can't seem to find anything about this being a known issue. Has anybody else had this happen and if so, what did you do to fix it?
Reset all settings !
Settings > General > Reset > Reset all settings.
That helped me with the same issue.
Good luck !! -
CR10 problem with printing details using Across then Down option
Post Author: roundedge_81
CA Forum: General
Hi,I have a sub-report that contains details with 'Format with Multiple Columns' and 'Across then Down' printing option enabled. My problem is when it prints if a column detail has more information than it could fit in the current page towards the end of the page. A page break is done and the remaining column detail is offset to the beginning of next page.for example: col1 col2 col3 X X X X X X If the data in row 2 and col 2 couldn't be fit into the current page this is what I seepage1 col1 col2 col3 X X X X page2 col1 col2 col3 X X can anyone suggest how can I stop this from happening.-Thankshi Ravi,
have a look at the attached report. extract the contents and change the .txt extension to .rpt.
this is not a report that was designed as a Label report, but is a multi-column report. see the section expert for the Details section if you're not familiar with multi-column reports. note in the Layout tab the options used.
also note that there are 3 groups in the report to make this happen. each of the group headers are conditionally suppressed based on the parameter. the groups are 'fake groups' and not based on any database fields. this is also important. the fake group formula is whilereadingrecords; ''
i hope this helps,
jamie -
Having Problems with 10.5.57? Then Please Read!
If you've installed the 10.5.7 update and are having problems there are some possible remedies. Most often the problems are created by an existing problem in the system that is updated. Here are some things to do that could help:
1. Repair the Hard Drive and Permissions
Boot from your OS X Installer disc. After the installer loads select your language and click on the Continue button. When the menu bar appears select Disk Utility from the Installer menu (Utilities menu for Tiger and Leopard.) After DU loads select your hard drive entry (mfgr.'s ID and drive size) from the the left side list. In the DU status area you will see an entry for the S.M.A.R.T. status of the hard drive. If it does not say "Verified" then the hard drive is failing or failed. (SMART status is not reported on external Firewire or USB drives.) If the drive is "Verified" then select your OS X volume from the list on the left (sub-entry below the drive entry,) click on the First Aid tab, then click on the Repair Disk button. If DU reports any errors that have been fixed, then re-run Repair Disk until no errors are reported. If no errors are reported click on the Repair Permissions button. Wait until the operation completes, then quit DU and return to the installer. Now restart normally.
If DU reports errors it cannot fix, then you will need Disk Warrior (4.0 for Tiger, and 4.1 for Leopard) and/or TechTool Pro (4.6.1 for Leopard) to repair the drive. If you don't have either of them or if neither of them can fix the drive, then you will need to reformat the drive and reinstall OS X.
2. Download the 10.5.7 Combo Updater and reinstall the update. Prior to installation remove all third-party peripherals. Use only the original keyboard and mouse that came with your computer.
3. Open Disk Utility in your Utilities folder and repair permissions again.
If this does not solve your problems, then you need to restore the backup of your old system, then follow the above instructions. If that doesn't solve your problem, then you may need to reinstall OS X from scratch or have your computer checked for possible hardware failure.Yes. They are inconsequential errors. See,
Mac OS X 10.5- Disk Utility's Repair Disk Permissions reports issues with SUID files and OS X 10.5- Disk Utility's Repair Disk Permissions messages that you can safely ignore. -
Problems with Zen Micro, wondering if anyone else had this problem
Hey guys, I'm having some issues with my Zen Mico. From what I can tell, the contacts in the headphone jack appear to be broken. The sound coming from my player is distorted, and it's really annoying. I've only had the player for a year now, and I don't think that it should be breaking this early in it's life. It's completely dumb that you'd have to pay 2.99 for a tutor session to just be told that your player is broken and to buy a new one. I have a feeling Creative will not replace the product and try to say that it's from "normal" use, so I'm wondering if anyone else here has had the same problems. Thanks for the help guys.
Oh, yes, this has been reported many, many times. You may want to use the search function to locate a few thousand of these posts.
-
Using Firefox 24.0 and Interclue 1.6.3, is there an update to this release of Interclue.
Hello,
'''Try Firefox Safe Mode''' to see if the problem goes away. Safe Mode is a troubleshooting mode, which disables most add-ons.
''(If you're not using it, switch to the Default theme.)''
* On Windows you can open Firefox 4.0+ in Safe Mode by holding the '''Shift''' key when you open the Firefox desktop or Start menu shortcut.
* On Mac you can open Firefox 4.0+ in Safe Mode by holding the '''option''' key while starting Firefox.
* On Linux you can open Firefox 4.0+ in Safe Mode by quitting Firefox and then going to your Terminal and running: firefox -safe-mode (you may need to specify the Firefox installation path e.g. /usr/lib/firefox)
* Or open the Help menu and click on the '''Restart with Add-ons Disabled...''' menu item while Firefox is running.
[[Image:FirefoxSafeMode|width=520]]
''Once you get the pop-up, just select "'Start in Safe Mode"''
[[Image:Safe Mode Fx 15 - Win]]
'''''If the issue is not present in Firefox Safe Mode''''', your problem is probably caused by an extension, and you need to figure out which one. Please follow the [[Troubleshooting extensions and themes]] article for that.
''To exit the Firefox Safe Mode, just close Firefox and wait a few seconds before opening Firefox for normal use again.''
''When you figure out what's causing your issues, please let us know. It might help other users who have the same problem.''
Thank you. -
It showed a number of apps to be updated on my iPad, so I clicked 'update all' as usual. It started, then the screen went white. The icons for the apps on the desktop went black, as they do, with the first one half way around the little circle timer, and two marked 'waiting', with others not that far into the process. They all stopped. Now I can't stop the update process in the App Store, or use any of the apps. What do I do next? Help, please!
Hello there, Rev Susi.
From what I can gather you have a few apps that only display "Waiting". The following is a past discussion that dealt with a similar issue, the answer may help you as well:
App updates won't download on my...: Apple Support Communities
https://discussions.apple.com/thread/4111336
Try tapping the App, so that it changes to Paused instead of Waiting, then tap it again to resume the install.
Make sure you don't have any paused downloads in other apps either, like the App Store or iTunes Store.
If that doesn't do it, try resetting or restoring the iPhone.
via whatheck
Thanks for reaching out to Apple Support Communities.
Cheers,
Pedro. -
Problems with Safari closing after update, anyone else?
Help!! Ever since the latest update while I'm on Safari, it will just close at any given time. It opens up as soon as I touch the icon but just shuts down whenever it wants.
You are not alone. You can look through this lengthy list of discussions and see if you can find anything that works for you.
https://discussions.apple.com/search.jspa?peopleEnabled=true&userID=&containerTy pe=&container=&spotlight=true&q=safari+crashes+in+ios+5
You can also try the standard recommended fixes. This is one that I use every time Safari crashes. It buys me some time - until the next crash. It could be an hour - could be six hours - no real rhyme or reason to it with my iPad.
Go to Settings>Safari>Clear History, Cookies and Data. Restart the iPad. Restart the iPad by holding down on the sleep button until the red slider appears and then slide to shut off. To power up hold the sleep button until the Apple logo appears and let go of the button.
Thee other basic steps that you can try ....
Reset the iPad by holding down on the sleep and home buttons at the same time for about 10-15 seconds until the Apple Logo appears - ignore the red slider - let go of the buttons.
Quit Safari and restart. Go to the home screen first by tapping the home button. Quit/close open apps by double tapping the home button and the task bar will appear with all of you recent/open apps displayed at the bottom. Tap and hold down on any app icon until it begins to wiggle. Tap the minus sign in the upper left corner to close the apps. Restart the iPad. Restart the iPad by holding down on the sleep button until the red slider appears and then slide to shut off. To power up hold the sleep button until the Apple logo appears and let go of the button. -
I have spend days trying to figure out why my appointments don't show up on the iCloud calendar. iCal on my Mac is just fine, all appointments are visible and working. I can get contacts on iCloud and Mail on iCloud but calendar shows up with no appointments. Help !
I have this same problem. However, if I enter all my appointments on the iCloud calendar, they magically show up on my macbook air calendar.
I think the problem might be something to do with different logons. I have just bought this macbook air and when I transferred my old computer's data onto the new computer, time machine via migrantion assistant, it forced me to create a different user for the old data. The new identity automatically created by the new OS syncs to iCloud, but not the old data identity. Since I have all my data on the old identity, I want to keep using this. But how to get it to sync to iCloud? Can anyone help us? I can't see my mail on iCloud either - at least not from the old identity. -
I have recently purchased a Mac. I'm very dissapointed at the way Outlook 2011(the newest version, what?!?)interfaces with the Mac. I used the contacts feature all the time when I had a microsoft system. Now, I can't do that with Outlook for the Mac. Does anyone have any alternative Apps that they've used for Business contacts? Thanks much.
thank you both for your responses. I'm having trouble mostly with a way to handle my business contacts. I'm self employed and when I had Outlook for Microst(before I switched to Apple)I was so pleased with this softward. Esp the way it would keep track of any correspondense between me and my customer. I could also track billing thru Outlook contacts.
Now, I get my mail thru outllook and use ical and @contacts. I see that I can have a separate group of contacts thru @contacts, but, it's not the same or nearly as good as Outlook contacts for Microsoft.
So, right now I'm really disapointed with my Mac purchase and hoping to find an app that will help. I will investigate Thunderbird.
thanks again. -
Photoshop CC 2014 having a problem with display driver then crashes computer
Since the Photoshop update in October most of the time when I open Photoshop CC 2014, either my computer crashes with the driver state power failure or the program is able to boot and provide an error message involving a problem with the display driver and then my computer crashes with the driver state power failure. I did not have this problem until the update in October. Any help would be greatly appreciated.
I am using Windows 8.1 64-bit
Intel(R) Core(TM) i7-4700HQ CPU @ 2.40GHz processor
12.0 GB of RAM
NVIDIA GeForce GTX 860m
Intel HD Graphics 4600
All drivers and programs are up to date.VHail wrote:
…All drivers and programs are up to date.
You need to update your video driver from the website of the manufacturer of your video card. You cannot rely on Windows Update or Microsoft, which typically have outdated drivers. -
Problem with Configuring Tomcat for running jsp web applications..Plz HELP
I am using Tomcat 5.5 and Jdk 1.5.0_12 and Oracle 10g. I am using jdbc-odbc bridge connection
to connect to the database. I have placed my project folder called
tdm under the webapps folder in Tomcat. This 'tdm' folder consists of
a collection of html pages,jsp pages and images of my project. Also I created a
WEB-INF folderand in that I have lib folder which contains catalina-root.jar
, classes12.jar and nls_charset.jar files. And also in the WEB-INF folder I have the web.xml
file which looks like this
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
Copyright 2004 The Apache Software Foundation
Licensed 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.
-->
<web-app>
<resource-ref>
<description>Oracle Datasource example</description>
<res-ref-name>jdbc/gdn</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
My Server.xml file in Tomcat\conf folder is as follows
<!-- Example Server Configuration File -->
<!-- Note that component elements are nested corresponding to their
parent-child relationships with each other -->
<!-- A "Server" is a singleton element that represents the entire JVM,
which may contain one or more "Service" instances. The Server
listens for a shutdown command on the indicated port.
Note: A "Server" is not itself a "Container", so you may not
define subcomponents such as "Valves" or "Loggers" at this level.
-->
<Server port="8005" shutdown="SHUTDOWN">
<!-- Comment these entries out to disable JMX MBeans support used for the
administration web application -->
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<!-- Global JNDI resources -->
<GlobalNamingResources>
<!-- Test entry for demonstration purposes -->
<Environment name="simpleValue" type="java.lang.Integer" value="30"/>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users -->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
<Resource name="jdbc/gdn" auth="Container"
type="javax.sql.DataSource" driverClassName="sun.jdbc.odbc.JdbcOdbcDriver"
url="jdbc:odbc:gdn"
username="system" password="tiger" maxActive="20" maxIdle="10"
maxWait="-1"/>
</GlobalNamingResources>
<!-- A "Service" is a collection of one or more "Connectors" that share
a single "Container" (and therefore the web applications visible
within that Container). Normally, that Container is an "Engine",
but this is not required.
Note: A "Service" is not itself a "Container", so you may not
define subcomponents such as "Valves" or "Loggers" at this level.
-->
<!-- Define the Tomcat Stand-Alone Service -->
<Service name="Catalina">
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Each Connector passes requests on to the
associated "Container" (normally an Engine) for processing.
By default, a non-SSL HTTP/1.1 Connector is established on port 8080.
You can also enable an SSL HTTP/1.1 Connector on port 8443 by
following the instructions below and uncommenting the second Connector
entry. SSL support requires the following steps (see the SSL Config
HOWTO in the Tomcat 5 documentation bundle for more detailed
instructions):
* If your JDK version 1.3 or prior, download and install JSSE 1.0.2 or
later, and put the JAR files into "$JAVA_HOME/jre/lib/ext".
* Execute:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA (Windows)
$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA (Unix)
with a password value of "changeit" for both the certificate and
the keystore itself.
By default, DNS lookups are enabled when a web application calls
request.getRemoteHost(). This can have an adverse impact on
performance, so you can disable it by setting the
"enableLookups" attribute to "false". When DNS lookups are disabled,
request.getRemoteHost() will return the String version of the
IP address of the remote client.
-->
<!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
<Connector
port="5050" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
<!-- Note : To disable connection timeouts, set connectionTimeout value
to 0 -->
<!-- Note : To use gzip compression you could set the following properties :
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml"
-->
<!-- Define a SSL HTTP/1.1 Connector on port 8443 -->
<!--
<Connector port="8443"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
-->
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
<!-- Define a Proxied HTTP/1.1 Connector on port 8082 -->
<!-- See proxy documentation for more information about using this. -->
<!--
<Connector port="8082"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" acceptCount="100" connectionTimeout="20000"
proxyPort="80" disableUploadTimeout="true" />
-->
<!-- An Engine represents the entry point (within Catalina) that processes
every request. The Engine implementation for Tomcat stand alone
analyzes the HTTP headers included with the request, and passes them
on to the appropriate Host (virtual host). -->
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1">
-->
<!-- Define the top level container in our container hierarchy -->
<Engine name="Catalina" defaultHost="localhost">
<!-- The request dumper valve dumps useful debugging information about
the request headers and cookies that were received, and the response
headers and cookies that were sent, for all requests received by
this instance of Tomcat. If you care only about requests to a
particular virtual host, or a particular application, nest this
element inside the corresponding <Host> or <Context> entry instead.
For a similar mechanism that is portable to all Servlet 2.4
containers, check out the "RequestDumperFilter" Filter in the
example application (the source for this filter may be found in
"$CATALINA_HOME/webapps/examples/WEB-INF/classes/filters").
Request dumping is disabled by default. Uncomment the following
element to enable it. -->
<!--
<Valve className="org.apache.catalina.valves.RequestDumperValve"/>
-->
<!-- Because this Realm is here, an instance will be shared globally -->
<!-- This Realm uses the UserDatabase configured in the global JNDI
resources under the key "UserDatabase". Any edits
that are performed against this UserDatabase are immediately
available for use by the Realm. -->
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
<!-- Comment out the old realm but leave here for now in case we
need to go back quickly -->
<!--
<Realm className="org.apache.catalina.realm.MemoryRealm" />
-->
<!-- Replace the above Realm with one of the following to get a Realm
stored in a database and accessed via JDBC -->
<!--
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="org.gjt.mm.mysql.Driver"
connectionURL="jdbc:mysql://localhost/authority"
connectionName="test" connectionPassword="test"
userTable="users" userNameCol="user_name" userCredCol="user_pass"
userRoleTable="user_roles" roleNameCol="role_name" />
-->
<!--
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="oracle.jdbc.driver.OracleDriver"
connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL"
connectionName="scott" connectionPassword="tiger"
userTable="users" userNameCol="user_name" userCredCol="user_pass"
userRoleTable="user_roles" roleNameCol="role_name" />
-->
<!--
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="sun.jdbc.odbc.JdbcOdbcDriver"
connectionURL="jdbc:odbc:CATALINA"
userTable="users" userNameCol="user_name" userCredCol="user_pass"
userRoleTable="user_roles" roleNameCol="role_name" />
-->
<!-- Define the default virtual host
Note: XML Schema validation will not work with Xerces 2.2.
-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!-- Defines a cluster for this node,
By defining this element, means that every manager will be changed.
So when running a cluster, only make sure that you have webapps in there
that need to be clustered and remove the other ones.
A cluster has the following parameters:
className = the fully qualified name of the cluster class
name = a descriptive name for your cluster, can be anything
mcastAddr = the multicast address, has to be the same for all the nodes
mcastPort = the multicast port, has to be the same for all the nodes
mcastBindAddr = bind the multicast socket to a specific address
mcastTTL = the multicast TTL if you want to limit your broadcast
mcastSoTimeout = the multicast readtimeout
mcastFrequency = the number of milliseconds in between sending a "I'm alive" heartbeat
mcastDropTime = the number a milliseconds before a node is considered "dead" if no heartbeat is received
tcpThreadCount = the number of threads to handle incoming replication requests, optimal would be the same amount of threads as nodes
tcpListenAddress = the listen address (bind address) for TCP cluster request on this host,
in case of multiple ethernet cards.
auto means that address becomes
InetAddress.getLocalHost().getHostAddress()
tcpListenPort = the tcp listen port
tcpSelectorTimeout = the timeout (ms) for the Selector.select() method in case the OS
has a wakup bug in java.nio. Set to 0 for no timeout
printToScreen = true means that managers will also print to std.out
expireSessionsOnShutdown = true means that
useDirtyFlag = true means that we only replicate a session after setAttribute,removeAttribute has been called.
false means to replicate the session after each request.
false means that replication would work for the following piece of code: (only for SimpleTcpReplicationManager)
<%
HashMap map = (HashMap)session.getAttribute("map");
map.put("key","value");
%>
replicationMode = can be either 'pooled', 'synchronous' or 'asynchronous'.
* Pooled means that the replication happens using several sockets in a synchronous way. Ie, the data gets replicated, then the request return. This is the same as the 'synchronous' setting except it uses a pool of sockets, hence it is multithreaded. This is the fastest and safest configuration. To use this, also increase the nr of tcp threads that you have dealing with replication.
* Synchronous means that the thread that executes the request, is also the
thread the replicates the data to the other nodes, and will not return until all
nodes have received the information.
* Asynchronous means that there is a specific 'sender' thread for each cluster node,
so the request thread will queue the replication request into a "smart" queue,
and then return to the client.
The "smart" queue is a queue where when a session is added to the queue, and the same session
already exists in the queue from a previous request, that session will be replaced
in the queue instead of replicating two requests. This almost never happens, unless there is a
large network delay.
-->
<!--
When configuring for clustering, you also add in a valve to catch all the requests
coming in, at the end of the request, the session may or may not be replicated.
A session is replicated if and only if all the conditions are met:
1. useDirtyFlag is true or setAttribute or removeAttribute has been called AND
2. a session exists (has been created)
3. the request is not trapped by the "filter" attribute
The filter attribute is to filter out requests that could not modify the session,
hence we don't replicate the session after the end of this request.
The filter is negative, ie, anything you put in the filter, you mean to filter out,
ie, no replication will be done on requests that match one of the filters.
The filter attribute is delimited by ;, so you can't escape out ; even if you wanted to.
filter=".*\.gif;.*\.js;" means that we will not replicate the session after requests with the URI
ending with .gif and .js are intercepted.
The deployer element can be used to deploy apps cluster wide.
Currently the deployment only deploys/undeploys to working members in the cluster
so no WARs are copied upons startup of a broken node.
The deployer watches a directory (watchDir) for WAR files when watchEnabled="true"
When a new war file is added the war gets deployed to the local instance,
and then deployed to the other instances in the cluster.
When a war file is deleted from the watchDir the war is undeployed locally
and cluster wide
-->
<!--
<Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster"
managerClassName="org.apache.catalina.cluster.session.DeltaManager"
expireSessionsOnShutdown="false"
useDirtyFlag="true"
notifyListenersOnReplication="true">
<Membership
className="org.apache.catalina.cluster.mcast.McastService"
mcastAddr="228.0.0.4"
mcastPort="45564"
mcastFrequency="500"
mcastDropTime="3000"/>
<Receiver
className="org.apache.catalina.cluster.tcp.ReplicationListener"
tcpListenAddress="auto"
tcpListenPort="4001"
tcpSelectorTimeout="100"
tcpThreadCount="6"/>
<Sender
className="org.apache.catalina.cluster.tcp.ReplicationTransmitter"
replicationMode="pooled"
ackTimeout="15000"/>
<Valve className="org.apache.catalina.cluster.tcp.ReplicationValve"
filter=".*\.gif;.*\.js;.*\.jpg;.*\.htm;.*\.html;.*\.txt;"/>
<Deployer className="org.apache.catalina.cluster.deploy.FarmWarDeployer"
tempDir="/tmp/war-temp/"
deployDir="/tmp/war-deploy/"
watchDir="/tmp/war-listen/"
watchEnabled="false"/>
</Cluster>
-->
<!-- Normally, users must authenticate themselves to each web app
individually. Uncomment the following entry if you would like
a user to be authenticated the first time they encounter a
resource protected by a security constraint, and then have that
user identity maintained across all web applications contained
in this virtual host. -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all requests for this virtual host. By
default, log files are created in the "logs" directory relative to
$CATALINA_HOME. If you wish, you can specify a different
directory with the "directory" attribute. Specify either a relative
(to $CATALINA_HOME) or absolute path to the desired directory.
-->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
-->
<!-- Access log processes all requests for this virtual host. By
default, log files are created in the "logs" directory relative to
$CATALINA_HOME. If you wish, you can specify a different
directory with the "directory" attribute. Specify either a relative
(to $CATALINA_HOME) or absolute path to the desired directory.
This access log implementation is optimized for maximum performance,
but is hardcoded to support only the "common" and "combined" patterns.
-->
<!--
<Valve className="org.apache.catalina.valves.FastCommonAccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
-->
<Context path="/tdm" docBase="tdm" debug="0" reloadable="true" />
</Host>
</Engine>
</Service>
</Server>
I have set the context path to /tdm in the server.xml file. Should this be placed in context.xml?
My first page in the project is called Homepage.html. To start my project I give http://localhost:5050/tdm/homepage.html
in a browser. Here I accept a username and password from the user and then do the validation in
a valid.jsp file, where I connect to the database and check and use jsp:forward to go to next pages
accordingly. However when I enter the username and password and click Go in the homepage, nothing is
displayed on the next page. The URL in the browser says valid.jsp but a blank screen appears.
WHY DOES IT HAPPEN SO? DOES IT MEAN THAT TOMCAT IS NOT RECOGNIZING JAVA IN MY SYSTEM OR IS IT A PROBLEM
WITH THE DATABASE CONNECTION OR SOMETHING ELSE? I FEEL THAT TOMCAT IS NOT EXECUTING JSP COMMANDS?
IS IT POSSIBLE?WHY WILL THIS HAPPEN?
I set the JAVA_HOME and CATALINA_HOME environment to the jdk and tomcat folders resp.
Is there any other thing that I need to set in classpath? Should I have my project as a
WAR file in the webapps of TOMCAT or just a folder i.e. directory structure will fine?I am using Tomcat 5.5 and Jdk 1.5.0_12 and Oracle 10g. I am using jdbc-odbc bridge connection
to connect to the database. I have placed my project folder called
tdm under the webapps folder in Tomcat. This 'tdm' folder consists of
a collection of html pages,jsp pages and images of my project. Also I created a
WEB-INF folderand in that I have lib folder which contains catalina-root.jar
, classes12.jar and nls_charset.jar files. And also in the WEB-INF folder I have the web.xml
file which looks like this
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
Copyright 2004 The Apache Software Foundation
Licensed 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.
-->
<web-app>
<resource-ref>
<description>Oracle Datasource example</description>
<res-ref-name>jdbc/gdn</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
My Server.xml file in Tomcat\conf folder is as follows
<!-- Example Server Configuration File -->
<!-- Note that component elements are nested corresponding to their
parent-child relationships with each other -->
<!-- A "Server" is a singleton element that represents the entire JVM,
which may contain one or more "Service" instances. The Server
listens for a shutdown command on the indicated port.
Note: A "Server" is not itself a "Container", so you may not
define subcomponents such as "Valves" or "Loggers" at this level.
-->
<Server port="8005" shutdown="SHUTDOWN">
<!-- Comment these entries out to disable JMX MBeans support used for the
administration web application -->
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<!-- Global JNDI resources -->
<GlobalNamingResources>
<!-- Test entry for demonstration purposes -->
<Environment name="simpleValue" type="java.lang.Integer" value="30"/>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users -->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
<Resource name="jdbc/gdn" auth="Container"
type="javax.sql.DataSource" driverClassName="sun.jdbc.odbc.JdbcOdbcDriver"
url="jdbc:odbc:gdn"
username="system" password="tiger" maxActive="20" maxIdle="10"
maxWait="-1"/>
</GlobalNamingResources>
<!-- A "Service" is a collection of one or more "Connectors" that share
a single "Container" (and therefore the web applications visible
within that Container). Normally, that Container is an "Engine",
but this is not required.
Note: A "Service" is not itself a "Container", so you may not
define subcomponents such as "Valves" or "Loggers" at this level.
-->
<!-- Define the Tomcat Stand-Alone Service -->
<Service name="Catalina">
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Each Connector passes requests on to the
associated "Container" (normally an Engine) for processing.
By default, a non-SSL HTTP/1.1 Connector is established on port 8080.
You can also enable an SSL HTTP/1.1 Connector on port 8443 by
following the instructions below and uncommenting the second Connector
entry. SSL support requires the following steps (see the SSL Config
HOWTO in the Tomcat 5 documentation bundle for more detailed
instructions):
* If your JDK version 1.3 or prior, download and install JSSE 1.0.2 or
later, and put the JAR files into "$JAVA_HOME/jre/lib/ext".
* Execute:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA (Windows)
$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA (Unix)
with a password value of "changeit" for both the certificate and
the keystore itself.
By default, DNS lookups are enabled when a web application calls
request.getRemoteHost(). This can have an adverse impact on
performance, so you can disable it by setting the
"enableLookups" attribute to "false". When DNS lookups are disabled,
request.getRemoteHost() will return the String version of the
IP address of the remote client.
-->
<!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
<Connector
port="5050" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
<!-- Note : To disable connection timeouts, set connectionTimeout value
to 0 -->
<!-- Note : To use gzip compression you could set the following properties :
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml"
-->
<!-- Define a SSL HTTP/1.1 Connector on port 8443 -->
<!--
<Connector port="8443"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
-->
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
<!-- Define a Proxied HTTP/1.1 Connector on port 8082 -->
<!-- See proxy documentation for more information about using this. -->
<!--
<Connector port="8082"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" acceptCount="100" connectionTimeout="20000"
proxyPort="80" disableUploadTimeout="true" />
-->
<!-- An Engine represents the entry point (within Catalina) that processes
every request. The Engine implementation for Tomcat stand alone
analyzes the HTTP headers included with the request, and passes them
on to the appropriate Host (virtual host). -->
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1">
-->
<!-- Define the top level container in our container hierarchy -->
<Engine name="Catalina" defaultHost="localhost">
<!-- The request dumper valve dumps useful debugging information about
the request headers and cookies that were received, and the response
headers and cookies that were sent, for all requests received by
this instance of Tomcat. If you care only about requests to a
particular virtual host, or a particular application, nest this
element inside the corresponding <Host> or <Context> entry instead.
For a similar mechanism that is portable to all Servlet 2.4
containers, check out the "RequestDumperFilter" Filter in the
example application (the source for this filter may be found in
"$CATALINA_HOME/webapps/examples/WEB-INF/classes/filters").
Request dumping is disabled by default. Uncomment the following
element to enable it. -->
<!--
<Valve className="org.apache.catalina.valves.RequestDumperValve"/>
-->
<!-- Because this Realm is here, an instance will be shared globally -->
<!-- This Realm uses the UserDatabase configured in the global JNDI
resources under the key "UserDatabase". Any edits
that are performed against this UserDatabase are immediately
available for use by the Realm. -->
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
<!-- Comment out the old realm but leave here for now in case we
need to go back quickly -->
<!--
<Realm className="org.apache.catalina.realm.MemoryRealm" />
-->
<!-- Replace the above Realm with one of the following to get a Realm
stored in a database and accessed via JDBC -->
<!--
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="org.gjt.mm.mysql.Driver"
connectionURL="jdbc:mysql://localhost/authority"
connectionName="test" connectionPassword="test"
userTable="users" userNameCol="user_name" userCredCol="user_pass"
userRoleTable="user_roles" roleNameCol="role_name" />
-->
<!--
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="oracle.jdbc.driver.OracleDriver"
connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL"
connectionName="scott" connectionPassword="tiger"
userTable="users" userNameCol="user_name" userCredCol="user_pass"
userRoleTable="user_roles" roleNameCol="role_name" />
-->
<!--
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="sun.jdbc.odbc.JdbcOdbcDriver"
connectionURL="jdbc:odbc:CATALINA"
userTable="users" userNameCol="user_name" userCredCol="user_pass"
userRoleTable="user_roles" roleNameCol="role_name" />
-->
<!-- Define the default virtual host
Note: XML Schema validation will not work with Xerces 2.2.
-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!-- Defines a cluster for this node,
By defining this element, means that every manager will be changed.
So when running a cluster, only make sure that you have webapps in there
that need to be clustered and remove the other ones.
A cluster has the following parameters:
className = the fully qualified name of the cluster class
name = a descriptive name for your cluster, can be anything
mcastAddr = the multicast address, has to be the same for all the nodes
mcastPort = the multicast port, has to be the same for all the nodes
mcastBindAddr = bind the multicast socket to a specific address
mcastTTL = the multicast TTL if you want to limit your broadcast
mcastSoTimeout = the multicast readtimeout
mcastFrequency = the number of milliseconds in between sending a "I'm alive" heartbeat
mcastDropTime = the number a milliseconds before a node is considered "dead" if no heartbeat is received
tcpThreadCount = the number of threads to handle incoming replication requests, optimal would be the same amount of threads as nodes
tcpListenAddress = the listen address (bind address) for TCP cluster request on this host,
in case of multiple ethernet cards.
auto means that address becomes
InetAddress.getLocalHost().getHostAddress()
tcpListenPort = the tcp listen port
tcpSelectorTimeout = the timeout (ms) for the Selector.select() method in case the OS
has a wakup bug in java.nio. Set to 0 for no timeout
printToScreen = true means that managers will also print to std.out
expireSessionsOnShutdown = true means that
useDirtyFlag = true means that we only replicate a session after setAttribute,removeAttribute has been called.
false means to replicate the session after each request.
false means that replication would work for the following piece of code: (only for SimpleTcpReplicationManager)
<%
HashMap map = (HashMap)session.getAttribute("map");
map.put("key","value");
%>
replicationMode = can be either 'pooled', 'synchronous' or 'asynchronous'.
* Pooled means that the replication happens using several sockets in a synchronous way. Ie, the data gets replicated, then the request return. This is the same as the 'synchronous' setting except it uses a pool of sockets, hence it is multithreaded. This is the fastest and safest configuration. To use this, also increase the nr of tcp threads that you have dealing with replication.
* Synchronous means that the thread that executes the request, is also the
thread the replicates the data to the other nodes, and will not return until all
nodes have received the information.
* Asynchronous means that there is a specific 'sender' thread for each cluster node,
so the request thread will queue the replication request into a "smart" queue,
and then return to the client.
The "smart" queue is a queue where when a session is added to the queue, and the same session
already exists in the queue from a previous request, that session will be replaced
in the queue instead of replicating two requests. This almost never happens, unless there is a
large network delay.
-->
<!--
When configuring for clustering, you also add in a valve to catch all the requests
coming in, at the end of the request, the session may or may not be replicated.
A session is replicated if and only if all the conditions are met:
1. useDirtyFlag is true or setAttribute or removeAttribute has been called AND
2. a session exists (has been created)
3. the request is not trapped by the "filter" attribute
The filter attribute is to filter out requests that could not modify the session,
hence we don't replicate the session after the end of this request.
The filter is negative, ie, anything you put in the filter, you mean to filter out,
ie, no replication will be done on requests that match one of the filters.
The filter attribute is delimited by ;, so you can't escape out ; even if you wanted to.
filter=".*\.gif;.*\.js;" means that we will not replicate the session after requests with the URI
ending with .gif and .js are intercepted.
The deployer element can be used to deploy apps cluster wide.
Currently the deployment only deploys/undeploys to working members in the cluster
so no WARs are copied upons startup of a broken node.
The deployer watches a directory (watchDir) for WAR files when watchEnabled="true"
When a new war file is added the war gets deployed to the local instance,
and then deployed to the other instances in the cluster.
When a war file is deleted from the watchDir the war is undeployed locally
and cluster wide
-->
<!--
<Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster"
managerClassName="org.apache.catalina.cluster.session.DeltaManager"
expireSessionsOnShutdown="false"
useDirtyFlag="true"
notifyListenersOnReplication="true">
<Membership
className="org.apache.catalina.cluster.mcast.McastService"
mcastAddr="228.0.0.4"
mcastPort="45564"
mcastFrequency="500"
mcastDropTime="3000"/>
<Receiver
className="org.apache.catalina.cluster.tcp.ReplicationListener"
tcpListenAddress="auto"
tcpListenPort="4001"
tcpSelectorTimeout="100"
tcpThreadCount="6"/>
<Sender
className="org.apache.catalina.cluster.tcp.ReplicationTransmitter"
replicationMode="pooled"
ackTimeout="15000"/>
<Valve className="org.apache.catalina.cluster.tcp.ReplicationValve"
filter=".*\.gif;.*\.js;.*\.jpg;.*\.htm;.*\.html;.*\.txt;"/>
<Deployer className="org.apache.catalina.cluster.deploy.FarmWarDeployer"
tempDir="/tmp/war-temp/"
deployDir="/tmp/war-deploy/"
watchDir="/tmp/war-listen/"
watchEnabled="false"/>
</Cluster>
-->
<!-- Normally, users must authenticate themselves to each web app
individually. Uncomment the following entry if you would like
a user to be authenticated the first time they encounter a
resource protected by a security constraint, and then have that
user identity maintained across all web applications contained
in this virtual host. -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all requests for this virtual host. By
default, log files are created in the "logs" directory relative to
$CATALINA_HOME. If you wish, you can specify a different
directory with the "directory" attribute. Specify either a relative
(to $CATALINA_HOME) or absolute path to the desired directory.
-->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
-->
<!-- Access log processes all requests for this virtual host. By
default, log files are created in the "logs" directory relative to
$CATALINA_HOME. If you wish, you can specify a different
directory with the "directory" attribute. Specify either a relative
(to $CATALINA_HOME) or absolute path to the desired directory.
This access log implementation is optimized for maximum performance,
but is hardcoded to support only the "common" and "combined" patterns.
-->
<!--
<Valve className="org.apache.catalina.valves.FastCommonAccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
-->
<Context path="/tdm" docBase="tdm" debug="0" reloadable="true" />
</Host>
</Engine>
</Service>
</Server>
I have set the context path to /tdm in the server.xml file. Should this be placed in context.xml?
My first page in the project is called Homepage.html. To start my project I give http://localhost:5050/tdm/homepage.html
in a browser. Here I accept a username and password from the user and then do the validation in
a valid.jsp file, where I connect to the database and check and use jsp:forward to go to next pages
accordingly. However when I enter the username and password and click Go in the homepage, nothing is
displayed on the next page. The URL in the browser says valid.jsp but a blank screen appears.
WHY DOES IT HAPPEN SO? DOES IT MEAN THAT TOMCAT IS NOT RECOGNIZING JAVA IN MY SYSTEM OR IS IT A PROBLEM
WITH THE DATABASE CONNECTION OR SOMETHING ELSE? I FEEL THAT TOMCAT IS NOT EXECUTING JSP COMMANDS?
IS IT POSSIBLE?WHY WILL THIS HAPPEN?
I set the JAVA_HOME and CATALINA_HOME environment to the jdk and tomcat folders resp.
Is there any other thing that I need to set in classpath? Should I have my project as a
WAR file in the webapps of TOMCAT or just a folder i.e. directory structure will fine? -
Lightroom 4.2 - Experiencing problems with images viewed on 2nd monitor
Hi All,
This problem seems to have started with my updating from 4.1 to 4.2. I have my second monitor set as Loupe - Normal and Fit. As I crop an image on my main monitor, the 2nd monitor view does not always change to the cropped view. If I switch to a different photo and then back to the one I just cropped, the 2nd monitor view will then show the cropped image, but it is almost always blurry. Sometimes I can click the image in the 2nd monitor view to change to a 1:1 view and it will look sharp, and then click again back to Fit and then it too will be sharp. Other times I get a message in the 2nd monitor view that says "no image selected" and bouncing back and forth between a different image will correct this.
This all started off with the majority, but not all cropped images showing as blurred and progressed to what I have described above. I seriously though I had a focus problem with my camera!
Is anyone else experinecing this since updating? Suggestions?
Below is the suggested information to provide...
What version of Lightroom? 4.2
Have you installed the recent updates? Yes, 4.2
What operating system? Windows 7 Ultimate 64 bit
What kind(s) of image file(s)? All images are converted to .dng upon import
If you are getting error message(s), what is the full text of the error message(s)? No error messages.
What were you doing when the problem occurred? I am in the develop module cropping images etc.
What other software are you running? Silver Efex Pro 2, but I have had that installed in many prior versions of Lightroom
Tell us about your computer hardware. How much RAM is installed? 32 GB - Yes, I know - overkill...
How much free space is on your system (C:) drive? 119 GB of 223 GB of my solid state drive c:\
Has this ever worked before? Yes
If so, do you recall any changes you made to Lightroom, such as adding Plug-ins, presets, etc.? No other changes other than updating to 4.2
Did you make any changes to your system, such as updating hardware, printers or drivers, or installing/uninstalling any programs? No, no other changes.
Thanks!Same problem. Not a soloution, but this may be relevant.
http://forums.adobe.com/message/4782916#4782916
Alan -
I am writing a mobile client that makes an HTTP Connection and performs a POST to the a Web Services Server. The WS is running .NET. My client works as it should running on all the emulators out there, however, I�m having a problem with an actual device. Then the InputStream is returned but the HTTPConnection.getLength returns >= 0. So I had to make a patch to read the InputStream in chunks and then discard the header section. This results in an �Unexpected End of Input Stream� Exception. Is this going to be a problem with other devices then the one I tested with: The Audiovox SMT-5600? I contacted the vendor but they won�t give any help on outside issues. The headers are getting mixed in with the stream returned. This does not happen on the emulator, the emulator filters out the headers and returns the length of the SOAP message. Here is the following code I have tried to correct this problem. If anyone has run into this issues and can give me some instruction on how to work around this problem I would appreciate it a lot. Thank you in advance!
int length = 0;
HttpConnection hc = null;
OutputStream out = null;
DataInputStream in = null;
hc = (HttpConnection)Connector.open(SOAP_SERIVCE_URL);
hc.setRequestMethod(HttpConnection.POST);
hc.setRequestProperty("Content-Type", "text/xml; charset=utf-8");
hc.setRequestProperty("Content-Length", Integer.toString(soapMessage.length()));
hc.setRequestProperty("SOAPAction","\"" + soapAction + "\"");
out = hc.openOutputStream();
out.write(soapMessage.getBytes());
in = hc.openDataInputStream();
length = (int)hc.getLength();
byte[] data = new byte[(int)length];
in.read(data);
This does not work because the length is not being returned. I have also tried this:
int length = 0;
HttpConnection hc = null;
OutputStream out = null;
DataInputStream in = null;
hc = (HttpConnection)Connector.open(SOAP_SERIVCE_URL);
hc.setRequestMethod(HttpConnection.POST);
hc.setRequestProperty("Content-Type", "text/xml; charset=utf-8");
hc.setRequestProperty("Content-Length", Integer.toString(soapMessage.length()));
hc.setRequestProperty("SOAPAction","\"" + soapAction + "\"");
out = hc.openOutputStream();
out.write(soapMessage.getBytes());
in = hc.openDataInputStream();
length = (int)hc.getLength();
if (length <= 0) {
String contentLength = hc.getRequestProperty("Content-Length");
length = Integer.parseInt(contentLength);
byte[] data = new byte[(int)length];
in.read(data);
This works but since the HTTP Headers are in the input stream and not filtered out I don't get the whole SOAP Message. I tried to read the input stream in chunks:
int length = 0;
HttpConnection hc = null;
OutputStream out = null;
DataInputStream in = null;
String response;
hc = (HttpConnection)Connector.open(SOAP_SERIVCE_URL);
hc.setRequestMethod(HttpConnection.POST);
hc.setRequestProperty("Content-Type", "text/xml; charset=utf-8");
hc.setRequestProperty("Content-Length", Integer.toString(soapMessage.length()));
hc.setRequestProperty("SOAPAction","\"" + soapAction + "\"");
out = hc.openOutputStream();
out.write(soapMessage.getBytes());
in = hc.openDataInputStream();
length = (int)hc.getLength();
if (length > 0) {
gs.setPositionStr("length > 0");
int actual = 0;
int bytesread = 0 ;
byte[] data = new byte[length];
in.readFully(data);
response = new String(data);
} else {
int chunkSize = 512;
int index = 0;
int readLength = 0;
byte[] data = new byte[chunkSize];
do {
if (data.length < index + chunkSize) {
byte[] newData = new byte[index + chunkSize];
System.arraycopy(data, 0, newData, 0, data.length);
data = newData;
readLength = in.read(data, index, chunkSize);
index += readLength;
} while (readLength == chunkSize);
length = index;
response = new String(data);
response = response.substring(response.indexOf("<?xml") -1); //remove the HTTP headers from the SOAP envelope
This methods gets into the else block because there is no length specified, but it throws an 'Unexpected End of Input Stream' exception. Looking at the response string only a portion of the input stream was read.Think simple! A query to the "Content-Length" won't work if the response is chunked (and it probably is). That's why getLength will return 0.
Solution is much simpler that sun does in the javadocs example codes:
int BUFFERSIZE=128;
ByteArrayOutputStream bout = new ByteArrayOutputStream();
byte[] buffer = new byte[BUFFERSIZE]
int bs = 0;
while((bs = in.read(buffer,0,buffer.length)!= -1){
bout.write(buffer,0,bs);
String response = bout.toString();It is always fast, simple, and short :) no if/else crap. Forget the length, and just read until end of stream and convert to String. -
I inherited this computer and have spent the last couple of months upgrading it. Put a gig of ram in and added a PCI card to help with a multi screen setup but now I have hit my first major head ache. I bought a Pioneer DVR - 104 off of ebay and installed it no problem. The only issue is once I went to test out my dvd feature I found I had no DVD player. I tried updating the system but it would not install it. So I finally was able to get 3.1 off of this site and it won't start up. It just blinks on the dock once and dissapears. I checked the specs and this machine came with the superdrive but my father opted out of it, why I don't know, so there should be no issues with the hardware, can anyone help me on this?
867 mhz G4 Mac OS X (10.3.9) 1.25 GB RAM, 60 GB HD, 3 Monitor DisplayHi-
I'm sorry the extras is in OS 10.4- my mistake. In OS 10.3, I believe the DVD player is in the main package. I couldn't find it to install seperately. So.......
Let me recap-
1- The DVR reads install discs
2- DVD's won't play because DVD player does not run
3- DVD-R discs show no response
So-
1- The DVR is reading
2- The version of DVD player may not be compatible
3- There is no burn support
To check burn support, in System Profiler, check if under Burn Support "Yes" is showing.
My current thinking is, that since there was no DVR in the origional configuration, you may need to reinstall (Archive and install) the OS 10.3 to get the proper DVD player installed. this should also configure burn support.
The other way to get burn support is to use the patchburn that I gave you the link to.
BUT, I think you should do things one at a time. My advice is to first get the DVR to read, play and burn in that order. There is obviously a problem with DVD player, so, unless some else can advise differently, I would try the Archive and Install of the OS 10.3.
It may also be good to run the OS 10.3.9 Combined Update:
http://www.apple.com/support/downloads/macosxcombinedupdate1039.html
trying the combined update now wouldn't hurt. If it does not remedy the situation, try the Archive and Install, then update.
Best-
Chris
G4 AGP(450)Sawtooth Mac OS X (10.4.8) 2ghzPPC,1.62gbSDRAM, ATI9800, DVR-110D,(IntHD)120&160,LaCie160,23"Cinema Display
Maybe you are looking for
-
The "text in a yellow box" that appears when I hover the mouse over a selection or help tag.
The "help tag" (Or in most cases the unwanted tag) often is in the way of what I want to look at. This is especially true when you are looking at an item that has it's own pop up giving you a description or information. When you hold the mouse over
-
How do i make a app on my macbook air 13" with netbeans
netbeans is a development tool for (mac os x intel ) windows and linux os but every time i try to use the app i created it says this is no longer ppc supported
-
Insert multiple rows with one sql statement in access
Hi, I'm trying to copy a table into another. What I want to do is to use "Insert into table1 select * from table2 where field > val". Something like that. I know a lot of databases support it. I was wondering if ms access ODBC driver also supports it
-
Busines Partner in table BUT000
Hi SAP gurus. When I'm running transaction FWZZ, when I try to insert the bussines partner number, the system returns an error that the bussines partner it's not updated in table BUT000. This only happens to the new Bussines Partners created by BPC1.
-
Repousse crashes Photoshop on initial rasterize nvoglv64.DLL
On both the 64 and 32-bit PS versions - the initial rasterization that takes place on text simply crashes photoshop. Everything traces back to an nvidia driver for an Nvida 7600 GT with openGL set to basic. Any setting other than basic causes slow, b