Whatsup - לינוקס, תוכנה חופשית וקוד פתוח בעברית

תיכנות בלינוקס - spring framework חדש בנושא זקוק לעזרה בעית ניתוב routing

Anonymous - 23/04/2016 - 10:48
נושא ההודעה: spring framework חדש בנושא זקוק לעזרה בעית ניתוב routing
יצרתי פרוייקט עם maven דרך eclipse

ב pom.xml

הגדרתי
javax.servlet
jstl
1.2

org.springframework
spring-webmvc
4.0.3.RELEASE



לאחר יצירת הפרוייקט

יצרתי ב /src/main תקייה בשם WEB-INF כמו ב javaEE

בתקייה WEB-INF יצרתי תקיה jsp , ושם יש לי בניתי קובץ index.jsp


במקור ה maven לא מייצר לי web.xml וה pom.xml מראה לי שגיאה בנושא web.xml is missing


בכל מקרה יצרתי קובץ web.xml עצמאי


DispatcherServlet-servlet

קוד:

<beans>
   <mvc:annotation-driven />
   <context:component-scan base-package="com.packt.webstore" />
   
   <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
      <property name="prefix" value="/WEB-INF/jsp/" />
      <property name="suffix" value=".jsp" />
   </bean>

</beans>



web.xml
קוד:

<web-app version="4.0" xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                          http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
   <servlet>
      <servlet-name>DispatcherServlet</servlet-name>
      <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
   </servlet>
   
   <servlet-mapping>
      <servlet-name>DispatcherServlet</servlet-name>
      <url-pattern>/</url-pattern>
   </servlet-mapping>

</web-app>



אני לא מצליח לגשת ל jsp שיצרתי .

שאני גולש ל 127.0.0.1:8080/webapp אני לא מצליח אני מקבל 404

בהתחלה חשבתי ש eclipse דפוק ל spring אז אמרתי טוב נו מתקין Spring tool Suite (מבוסס אקליפס) אמרתי לעצמי בטח יש שם כלי אינטגרלי ל xml שמתאים ל namespace של spring
אבל לא אותן תוצאות אני מקבל

אולי משהו השתנה עם maven ל spring ואני צריך להוסיף תלות נוספת ?

אשמח לתגובות
Anonymous - 23/04/2016 - 10:54
נושא ההודעה:
DispatcherServlet-servlet.xml
web.xml

נמצאים ב /src/main/webapp/WEB-INF

קןבץ ה jsp נמצאים ב
src/main/webapp/WEB-INF/jsp/index.jsp

אין דבר שאני יותר שונא מכל ה xml האלה שצריך לשנן בזיכרון של המוח ...
ולזכור כל "מיני טריקים" כדי שיעבדו נכון ...


יש אולי איזה כלי שנותן autocompletion ב ide ברגע שכתובים את ה xml ב ide ?

רוצה ללמוד spring אבל שונא xml . זה יכול להתקבל על הדעת רק אם עושים ב xml אותו דבר מליון פעם בכל פרוייקט אז אני מניח שזוכרים בע"פ
Yotamb - 23/04/2016 - 16:32
נושא ההודעה:
רוב ה-XMLים האלו הם חלק מה-Servlet API של ג'אווה (לא קשורים לספרינג).
טכנית, את הקונפיגורציות של ספרינג (כל ה-beanים למניהם) אתה יכול להגדיר בקלאסים בג'אווה, תלוי בגרסא של ספרינג.

ולשאלתך -
למה אתה מצפה לקבל תשובה ב-webapp/? הגדרת קונטרולר שיחזיר תשובה ל-URL הזה?
ה-ResourceViewResolver שהוספת ב-web.xml בסה"כ מגדיר מה ייקרה עם התשובה של הקונטרולר. במקרה שלך, הקונטלור צריך להחזיר מחרוזת "index" וה-ViewResolver יחפש קובץ JSP עם השם הזה.

תסתכל על התשובה לשאלה הזו ב-StackOverflow:
http://stackoverflow.com/questions/1483063/spring-mvc-3-and-handling-static-content-am-i-missing-something


האם הגדרת קונטרולר שכזה? Smile
כל הזמנים הם GMT + 2 שעות