public Date() { } static Calendar cal = Calendar.getInstance(); static Date date = new Date(); static Calendar cal4 = Calendar.getInstance(); static Calendar kal = Calendar.getInstance(); public static final Locale locale = new Locale( "da", "DK"); private static java.util.Date dte = new java.util.Date();
/** Denne metode stiller alle anvendte kalendere til tidspunktet lige nu. Kaldes fra flere forskellige JSP sider. */ public static void Current() { cal4.setTime( new java.util.Date()); cal.setTime( new java.util.Date()); kal.setTime( new java.util.Date()); }
/** Denne metode returnerer dags dato i "almindeligt" format */ public static String getSimpleDateFormat() { String strD = new SimpleDateFormat("dd-MM-yyyy").format(dte); return strD; }
/** Denne metode returnerer datoen for en bestemt dag alt efter inputtet. */
public static int getDay(int day) { cal.add(Calendar.DATE, day); return cal.get(Calendar.DATE); }
/** Denne metode returnerer antallet af dage i en bestemt maanede alt efter, hvor meget inputtet angiver at kalenderen skal rulles tilbage */ public static int getMonthCount() { Calendar cal = Calendar.getInstance(); return cal.getActualMaximum(Calendar.DATE); }
/** Denne metode returnerer antallet af dage i forrige maanede */ public static int getPrevMonth() { kal.roll(Calendar.MONTH, -1); return kal.getActualMaximum(Calendar.DATE); }
/** Denne metode returnerer antallet af dage i naeste maanede */
public static int getNextMonth() { kal.roll(Calendar.MONTH, 1); return kal.getActualMaximum(Calendar.DATE); }
/** Denne metode returnerer nuvaerende aarstal */ public static int getYear() { return cal.get(cal.YEAR); }
/** Denne metode returnerer en dags navn alt efter hvilken dag man oensker */ public static String getWeekDay(int prev_Next) { Calendar cal8 = Calendar.getInstance(); cal8.roll(Calendar.DATE, prev_Next);
int day = cal8.get(Calendar.DAY_OF_WEEK); String dayName = "";
switch(day) { case 1 : dayName = "søndag ";break; case 2 : dayName = "mandag";break; case 3 : dayName = "tirsdag";break; case 4 : dayName = "onsdag ";break; case 5 : dayName = "torsdag";break; case 6 : dayName = "fredag ";break; case 7 : dayName = "lørdag ";break; } return dayName; }
/** Denne metode returnerer en maaneds navn alt efter hvilken maaned man oensker */ public static String getPrevMonthN(int prevNext) { cal4.roll(Calendar.MONTH, prevNext); int monthNr = cal4.get(Calendar.MONTH); String MonthName = "";
switch(monthNr) { case 0 : MonthName = "Januar";break; case 1 : MonthName = "Februar";break; case 2 : MonthName = "Marts";break; case 3 : MonthName = "April";break; case 4 : MonthName = "Maj";break; case 5 : MonthName = "Juni";break; case 6 : MonthName = "Juli";break; case 7 : MonthName = "August";break; case 8 : MonthName = "September";break; case 9 : MonthName = "Oktober";break; case 10: MonthName = "November";break; case 11 : MonthName = "December";break; } return MonthName; }
/** Denne metode returnerer en Vector som indeholder HTML raekker. Ind-parameteren afgør hvor mange raekker der skal genereres. */
public static Vector MakeRows(int h) { int month = kal.get(Calendar.MONTH); int year = kal.get(Calendar.YEAR); Calendar calle = Calendar.getInstance(); calle.set(year, month, 1); int g = calle.get(Calendar.DAY_OF_WEEK); Vector Vraekker = new Vector();
/** Denne metode returnerer en dags navn alt efter input parameteren. */ public static String weekDay(int h) { String dayName = "";
switch(h) { case 1 : dayName = "søndag d.";break; case 2 : dayName = "mandag d.";break; case 3 : dayName = "tirsdag d.";break; case 4 : dayName = "onsdag d.";break; case 5 : dayName = "torsdag d.";break; case 6 : dayName = "fredag d.";break; case 7 : dayName = "lørdag d ";break; } return dayName; }
}
Fejlen lyder:
Internal Servlet Error:javax.servlet.ServletException at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:459) at _0002fmonth_0002ejspmonth_jsp_4._jspService(_0002fmonth_0002ejspmonth_jsp_4.java:145) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:177) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404) at org.apache.tomcat.core.Handler.service(Handler.java:286) at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372) at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797) at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743) at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:210) at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416) at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498) at java.lang.Thread.run(Thread.java:484) Root cause: java.lang.NullPointerException at _0002fmonth_0002ejspmonth_jsp_4._jspService(_0002fmonth_0002ejspmonth_jsp_4.java:133) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:177) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404) at org.apache.tomcat.core.Handler.service(Handler.java:286) at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372) at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797) at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743) at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:210) at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416) at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498) at java.lang.Thread.run(Thread.java:484)
Jeg har kun vist java filen. Jeg har også 4 jsp-sider. Hvis der er nogle der vil teste det hele, så kan jeg sende dem pr. mail.
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Jeg har lige smidt al koden fra min date-klasse ind i en Session bean (EJB), og lavet alle metoderne ikke statiske (de må jo ikke være statiske i en EJB) og nu virker det hele. Både i Jbuilder og i en alm. browser!
Jeg ved ikke hvorfor, men måske fordi at min EJB bliver instantieret vha. create metoden! Men det vigtigste er jo at det virker.
public class DateBean implements SessionBean { private SessionContext sessionContext; static final Calendar cal = Calendar.getInstance(); static final DateBean date = new DateBean(); static final Calendar cal4 = Calendar.getInstance(); static final Calendar kal = Calendar.getInstance(); public static final Locale locale = new Locale( "da", "DK"); private static final java.util.Date dte = new java.util.Date();
public void ejbCreate() { } public void ejbRemove() throws RemoteException { } public void ejbActivate() throws RemoteException { } public void ejbPassivate() throws RemoteException { } public void setSessionContext(SessionContext sessionContext) throws RemoteException { this.sessionContext = sessionContext; }
/** Denne metode stiller alle anvendte kalendere til tidspunktet lige nu. Kaldes fra flere forskellige JSP sider. */ public void Current() { cal4.setTime( new java.util.Date()); cal.setTime( new java.util.Date()); kal.setTime( new java.util.Date()); }
/** Denne metode returnerer dags dato i "almindeligt" format */ public String getSimpleDateFormat() { String strD = new SimpleDateFormat("dd-MM-yyyy").format(dte); return strD; }
/** Denne metode returnerer datoen for en bestemt dag alt efter inputtet. */
public int getDay(int day) { cal.add(Calendar.DATE, day); return cal.get(Calendar.DATE); }
/** Denne metode returnerer antallet af dage i en bestemt maanede alt efter, hvor meget inputtet angiver at kalenderen skal rulles tilbage */ public int getMonthCount() { Calendar cal = Calendar.getInstance(); return cal.getActualMaximum(Calendar.DATE); }
/** Denne metode returnerer antallet af dage i forrige maanede */ public int getPrevMonth() { kal.roll(Calendar.MONTH, -1); return kal.getActualMaximum(Calendar.DATE); }
/** Denne metode returnerer antallet af dage i naeste maanede */
public int getNextMonth() { kal.roll(Calendar.MONTH, 1); return kal.getActualMaximum(Calendar.DATE); }
/** Denne metode returnerer nuvaerende aarstal */ public int getYear() { return cal.get(cal.YEAR); }
/** Denne metode returnerer en dags navn alt efter hvilken dag man oensker */ public String getWeekDay(int prev_Next) { Calendar cal8 = Calendar.getInstance(); cal8.roll(Calendar.DATE, prev_Next);
int day = cal8.get(Calendar.DAY_OF_WEEK); String dayName = "";
switch(day) { case 1 : dayName = "søndag ";break; case 2 : dayName = "mandag";break; case 3 : dayName = "tirsdag";break; case 4 : dayName = "onsdag ";break; case 5 : dayName = "torsdag";break; case 6 : dayName = "fredag ";break; case 7 : dayName = "lørdag ";break; } return dayName; }
/** Denne metode returnerer en maaneds navn alt efter hvilken maaned man oensker */ public String getPrevMonthN(int prevNext) { cal4.roll(Calendar.MONTH, prevNext); int monthNr = cal4.get(Calendar.MONTH); String MonthName = "";
switch(monthNr) { case 0 : MonthName = "Januar";break; case 1 : MonthName = "Februar";break; case 2 : MonthName = "Marts";break; case 3 : MonthName = "April";break; case 4 : MonthName = "Maj";break; case 5 : MonthName = "Juni";break; case 6 : MonthName = "Juli";break; case 7 : MonthName = "August";break; case 8 : MonthName = "September";break; case 9 : MonthName = "Oktober";break; case 10: MonthName = "November";break; case 11 : MonthName = "December";break; } return MonthName; }
/** Denne metode returnerer en Vector som indeholder HTML raekker. Ind-parameteren afgør hvor mange raekker der skal genereres. */
public Vector MakeRows(int h) { int month = kal.get(Calendar.MONTH); int year = kal.get(Calendar.YEAR); Calendar calle = Calendar.getInstance(); calle.set(year, month, 1); int g = calle.get(Calendar.DAY_OF_WEEK); Vector Vraekker = new Vector();
tja sådanne kan man også gøre det. Men hvis du ikke har brug for EJB funktionaliteten er det totalt overkill at bruge dem.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.