Deep links do not work for a portlet deployment
Description: deep links do not work, for instance clicking on an email link " view ticket #xxxxx " print the error message " Parameter ticketId is missing ".
Solution: apply patch http://www.ja-sig.org/issues/browse/UP-2061 to uPortal.
DownloadException: data is null, can not download
Description: this exception occurs in portlet deployments when the download servlet does not share the session of the MyFaces servlet.
Solution: use the emptySessionPath parameter for the Tomcat connector, for instance:
<Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" emptySessionPath="true" />
Apache frontal server
If your Tomcat is behind an frontal server (like Apache), don't forget to set the parameter on the corresponding connector (here with mod_jk/AJPv13):
<Connector port="8009" enableLookups="false" redirectPort="8443" protocol="AJP/1.3" emptySessionPath="true" />
Statistics charts do not appear (InternalError)
At first check that the emptySessionPath parameter is correctly set as shown above.
If you get the following error (Unix platforms only):
InternalError: Can't connect to X11 window server using 'xxx' as the value of the DISPLAY variable
You have to unset the DISPLAY environment variable before launching the application, as shown on the helpdesk.sh script (cf 03 Administration ):
unset DISPLAY
Statistics charts do not appear (NoClassDefFoundError)
If you get the following error:
java.lang.NoClassDefFoundError
It is probably an X11 issue (the AWT library tries to use an unexistant X11 server to generate images). Add the following option when launching the application:
java -Djava.awt.headless=true ...
See:
- http://www.jfree.org/jfreechart/faq.html#FAQ10
- http://java.sun.com/products/java-media/2D/reference/faqs/index.html#Q_I_have_an_application_that_rea
- http://www.jfree.org/phpBB2/viewtopic.php?t=1012
There are unused things in the database
Description: upgrading the database structures with Hibernate creates new tables and fields but does not remove obsolete structures. Depending on the version you started with, there may effectively be unused tables and fields.
Solution: Obsolete fields and tables can be removed manually using the following SQL statements:
ALTER TABLE h_acti DROP FOREIGN KEY FKB6E0538EF9CD6EB0; ALTER TABLE h_acti DROP KEY FKB6E0538EF9CD6EB0; ALTER TABLE `h_acti` DROP `faq_conn_afte_id`; ALTER TABLE `h_cate` DROP `new_tick_assi_cust_clas`, DROP `dele`, DROP `use_defa_tick_temp`; ALTER TABLE h_depa DROP FOREIGN KEY FKB6E1B7A912177440; ALTER TABLE h_depa DROP KEY FKB6E1B7A912177440; ALTER TABLE `h_depa` DROP `algo_stat`, DROP `auto_expi`, DROP `comp_url_cust_clas`, DROP `new_tick_prop_cust_clas`, DROP `tick_moni_cust_clas`, DROP `defa_new_tick_assi_cust_clas`, DROP `real_cate_id`, DROP `use_defa_tick_temp`; ALTER TABLE `h_depa_mana` DROP `tick_moni_crea_all`, DROP `tick_moni_crea_mana`, DROP `tick_moni_crea_cate_memb`, DROP `tick_moni_crea_free`, DROP `tick_moni_crea_orph`, DROP `tick_moni_clos_all`, DROP `tick_moni_clos_mana`, DROP `tick_moni_clos_cate_memb`, DROP `tick_moni_clos_free`, DROP `tick_moni_clos_orph`, DROP `tick_moni_othe_all`, DROP `tick_moni_othe_mana`, DROP `tick_moni_othe_cate_memb`, DROP `tick_moni_othe_free`, DROP `tick_moni_othe_orph`; ALTER TABLE `h_stat` DROP `tick_crea_stat_last_time`, DROP `user_tick_crea_stat_last_time`; ALTER TABLE `h_tick` DROP `owne_disp_name`, DROP `depa_labe`, DROP `cate_labe`; ALTER TABLE `h_user` DROP `pers_tick_moni`, DROP `invo_tick_moni`, DROP `lang_id`, DROP `html_emai_form`, DROP `text_emai_form`, DROP `show_new_tick_welc`, DROP `embo_chan_tick`, DROP `depa_filt_set`, DROP `cont_pane_refr_time`, DROP `cont_pane_stat_filt`, DROP `cont_pane_invo_filt`, DROP `sear_page_size`, DROP `jour_refr_time`, DROP `jour_date_filt`, DROP `text_widt`, DROP `text_heig`, DROP `last_visi`, DROP `show_popu_on_tick_clos`, DROP `cont_pane_orde_by`, DROP `star_on_cont_pane`; ALTER TABLE `h_vers_mana` DROP `inde_upda`; DROP TABLE `h_faq_dele`; TRUNCATE TABLE `h_faq_entr`; TRUNCATE TABLE `h_faq_part`; TRUNCATE TABLE `h_file`; TRUNCATE TABLE `h_tick_temp`; DROP TABLE `h_day_user_tick_crea_stat`; DROP TABLE `h_hour_tick_crea_stat`;
With MySql, the name of the foreign keys is shown with SHOW CREATE TABLE h_acti; (resp. h_depa); once known, the foreign keys can be dropped with ALTER TABLE h_acti DROP FOREIGN KEY FKB6E0538EF9CD6EB0; (resp. h_depa et FKB6E1B7A961B67C78), cf http://lists.mysql.com/mysql/204151).
In portlet deployment, the menu entries appear as ugly buttons
Description: obviously a problem with CSS stylesheets.
Solution: Import the esup-helpdesk CSS stylesheets from one of the CSS stylesheets of the portal (adapt them to your look if needed).
@import "/esup-helpdesk/media/commons.css"; @import "/esup-helpdesk/media/helpdesk.css"; @import "/esup-helpdesk/media/portlet.css";
I am an administrator but I can not edit the categories
In order to edit the categories of a department, a user must:
- be a manager of the department
- be granted to do it (see the properties of the managers)
Users do not receive the emails normally sent by the application
- be sure that the outgoing email is correctly configured (see Configuring outgoing email) and test with the ant task test-smtp.
- watch carefully the log files.
- be sure that the LDAP attribute that corresponds to the users' email address (property ldap.emailAttribute) is retrieved by LDAP extractions (property ldap.attributes).
All the LDAP attributes are displayed when adding a ticket, I want some of them to be hidden
If the property userInfo.ldapAttributes is left empty (by default), all the LDAP attributes are displayed. To display some of them only, set this property (comma-separated list of the displayed attributes).
Authentication does not work for external users in portlet mode with uPortal
Make sure that you use the correct Guest and Login servlet in uPortal.
- /org/jasig/portal/GuestServlet.java(does not invalidate the HTTP session)
- /org/jasig/portla/LoginServlet.java (fixes UP-2061)
Note for uPortal-esup users
- LoginServlet is already present in the update folder of all the esupdev-2.6-esup distributions
- GuestServlet must be placed in your custom/uPortal/source folder up to release 2.0.5 (esupdev-2.6-esup-2.0.5 is up to date).
ERROR: function timediff(timestamp with time zone, timestamp without time zone) does not exist
The function timediff is native in MySql but must be added by hand by PostGres users, as well as the function time_to_sec:
CREATE FUNCTION timediff(t1 timestamptz, t2 "timestamp") RETURNS "interval" AS 'select ($2-$1)::interval' language sql; CREATE OR REPLACE FUNCTION time_to_sec(i1 "interval") RETURNS float8 AS 'SELECT EXTRACT(EPOCH FROM $1) AS result;' language sql;
Can not download the libraries when installing
This may happen if your server is behind a HTTP proxy. In this refer to the Ant manual to pass options to ant.
MalformedUrlException after database inactivity
These exceptions are often throw oby the first request after an inactivity period of the database.
To get rid of them, setup your Tomcat pool as shown here (see this thread in French).
Troubles with Shibboleth
I had a problem with Shibboleth and esup-hepldesk :
Shibboleth worked fine but I couldn't authenticate myself on helpdesk... When I clicked on "Shibboleth" on the hekpldesk's front page, I were redirected to my WAYF and my CAS, but after my CAS' authentication, I came back the front page without being authenticated...
Note : I'm using the helpdesk as a servlet in Tomcat with an Apache front-end.
To solve this problem, you have to add this lines in your apache configuration :
<Location /helpdesk/stylesheets/shibboleth.faces>
AuthType shibboleth
ShibRequireSession On
ShibUseHeaders On
require valid-user
</Location>