How to Use SimpleUrlHandlerMapping with SpringBoot










1















I am using SpringBoot and want to configure SimpleUrlHandlerMapping bean for my custom mapping. For that follow are the piece of code that I wrote.



@Configuration
public class WebConfiguration

@Bean
public SimpleUrlHandlerMapping simpleUrlHandlerMapping()
System.out.println("creating SimpleUrlHandlerMapping ....");
SimpleUrlHandlerMapping simpleUrlHandlerMapping = new SimpleUrlHandlerMapping();
simpleUrlHandlerMapping.setOrder(0);
Properties urlProperties = new Properties();
urlProperties.put("/index", "myController");

simpleUrlHandlerMapping.setMappings(urlProperties);

return simpleUrlHandlerMapping;




I also have one Controller with name myController and its code looks like this.



@Controller("myController")
public class MyController extends AbstractController

@Override
protected ModelAndView handleRequestInternal(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception
System.out.println("My Controller!");
return null;





Now as per code when http://localhost:7171//index is hit then it should print the My Controller message on console. But it not touch this code.
Because this is an SpringBoot application and on start it print this bean registration with myController.



Could someone help to resolve this issue and tell me whats wrong in this code.



Thanks in advance.










share|improve this question


























    1















    I am using SpringBoot and want to configure SimpleUrlHandlerMapping bean for my custom mapping. For that follow are the piece of code that I wrote.



    @Configuration
    public class WebConfiguration

    @Bean
    public SimpleUrlHandlerMapping simpleUrlHandlerMapping()
    System.out.println("creating SimpleUrlHandlerMapping ....");
    SimpleUrlHandlerMapping simpleUrlHandlerMapping = new SimpleUrlHandlerMapping();
    simpleUrlHandlerMapping.setOrder(0);
    Properties urlProperties = new Properties();
    urlProperties.put("/index", "myController");

    simpleUrlHandlerMapping.setMappings(urlProperties);

    return simpleUrlHandlerMapping;




    I also have one Controller with name myController and its code looks like this.



    @Controller("myController")
    public class MyController extends AbstractController

    @Override
    protected ModelAndView handleRequestInternal(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception
    System.out.println("My Controller!");
    return null;





    Now as per code when http://localhost:7171//index is hit then it should print the My Controller message on console. But it not touch this code.
    Because this is an SpringBoot application and on start it print this bean registration with myController.



    Could someone help to resolve this issue and tell me whats wrong in this code.



    Thanks in advance.










    share|improve this question
























      1












      1








      1








      I am using SpringBoot and want to configure SimpleUrlHandlerMapping bean for my custom mapping. For that follow are the piece of code that I wrote.



      @Configuration
      public class WebConfiguration

      @Bean
      public SimpleUrlHandlerMapping simpleUrlHandlerMapping()
      System.out.println("creating SimpleUrlHandlerMapping ....");
      SimpleUrlHandlerMapping simpleUrlHandlerMapping = new SimpleUrlHandlerMapping();
      simpleUrlHandlerMapping.setOrder(0);
      Properties urlProperties = new Properties();
      urlProperties.put("/index", "myController");

      simpleUrlHandlerMapping.setMappings(urlProperties);

      return simpleUrlHandlerMapping;




      I also have one Controller with name myController and its code looks like this.



      @Controller("myController")
      public class MyController extends AbstractController

      @Override
      protected ModelAndView handleRequestInternal(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception
      System.out.println("My Controller!");
      return null;





      Now as per code when http://localhost:7171//index is hit then it should print the My Controller message on console. But it not touch this code.
      Because this is an SpringBoot application and on start it print this bean registration with myController.



      Could someone help to resolve this issue and tell me whats wrong in this code.



      Thanks in advance.










      share|improve this question














      I am using SpringBoot and want to configure SimpleUrlHandlerMapping bean for my custom mapping. For that follow are the piece of code that I wrote.



      @Configuration
      public class WebConfiguration

      @Bean
      public SimpleUrlHandlerMapping simpleUrlHandlerMapping()
      System.out.println("creating SimpleUrlHandlerMapping ....");
      SimpleUrlHandlerMapping simpleUrlHandlerMapping = new SimpleUrlHandlerMapping();
      simpleUrlHandlerMapping.setOrder(0);
      Properties urlProperties = new Properties();
      urlProperties.put("/index", "myController");

      simpleUrlHandlerMapping.setMappings(urlProperties);

      return simpleUrlHandlerMapping;




      I also have one Controller with name myController and its code looks like this.



      @Controller("myController")
      public class MyController extends AbstractController

      @Override
      protected ModelAndView handleRequestInternal(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception
      System.out.println("My Controller!");
      return null;





      Now as per code when http://localhost:7171//index is hit then it should print the My Controller message on console. But it not touch this code.
      Because this is an SpringBoot application and on start it print this bean registration with myController.



      Could someone help to resolve this issue and tell me whats wrong in this code.



      Thanks in advance.







      spring spring-boot






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 10 '18 at 17:56









      Still LearningStill Learning

      5403827




      5403827






















          1 Answer
          1






          active

          oldest

          votes


















          2














          @Autowire Controller Bean in Configuration class and pass it through Properties




          SimpleUrlHandlerMapping is the most flexible HandlerMapping implementation. It allows for direct and declarative mapping between either bean instances and URLs or between bean names and URLs.



          Let’s map requests “/simpleUrlWelcome” and “/*/simpleUrlWelcome” to the “welcome” bean: here




          @Configuration
          public class WebConfiguration

          @Autowired
          private indexController index;

          @Bean
          public SimpleUrlHandlerMapping simpleUrlHandlerMapping()
          System.out.println("creating SimpleUrlHandlerMapping ....");
          SimpleUrlHandlerMapping simpleUrlHandlerMapping = new SimpleUrlHandlerMapping();
          simpleUrlHandlerMapping.setOrder(0);
          Properties<String,Object> urlProperties = new Properties<>();
          urlProperties.put("/index", index);

          simpleUrlHandlerMapping.setMappings(urlProperties);

          return simpleUrlHandlerMapping;




          Controller



          @Controller("index")
          public class indexController extends AbstractController

          @Override
          protected ModelAndView handleRequestInternal(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception
          System.out.println("My Controller index!");
          return null;








          share|improve this answer

























          • Thanks Deadpool! your name is super cool.

            – Still Learning
            Nov 11 '18 at 4:51











          • Hi @Deadpool, Sorry to say but still it showing 404 on hitting localhost:7171//index . I misunderstood that system working but its not. Could you please guide me further.

            – Still Learning
            Nov 11 '18 at 5:39











          • try this localhost:7171/index tomcat is running on 7171?

            – Deadpool
            Nov 11 '18 at 6:05











          • I tried the same localhost:7171/index but 404 is coming.

            – Still Learning
            Nov 11 '18 at 6:27











          • updating code try with that @StillLearning

            – Deadpool
            Nov 11 '18 at 6:32










          Your Answer






          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "1"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53241838%2fhow-to-use-simpleurlhandlermapping-with-springboot%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          2














          @Autowire Controller Bean in Configuration class and pass it through Properties




          SimpleUrlHandlerMapping is the most flexible HandlerMapping implementation. It allows for direct and declarative mapping between either bean instances and URLs or between bean names and URLs.



          Let’s map requests “/simpleUrlWelcome” and “/*/simpleUrlWelcome” to the “welcome” bean: here




          @Configuration
          public class WebConfiguration

          @Autowired
          private indexController index;

          @Bean
          public SimpleUrlHandlerMapping simpleUrlHandlerMapping()
          System.out.println("creating SimpleUrlHandlerMapping ....");
          SimpleUrlHandlerMapping simpleUrlHandlerMapping = new SimpleUrlHandlerMapping();
          simpleUrlHandlerMapping.setOrder(0);
          Properties<String,Object> urlProperties = new Properties<>();
          urlProperties.put("/index", index);

          simpleUrlHandlerMapping.setMappings(urlProperties);

          return simpleUrlHandlerMapping;




          Controller



          @Controller("index")
          public class indexController extends AbstractController

          @Override
          protected ModelAndView handleRequestInternal(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception
          System.out.println("My Controller index!");
          return null;








          share|improve this answer

























          • Thanks Deadpool! your name is super cool.

            – Still Learning
            Nov 11 '18 at 4:51











          • Hi @Deadpool, Sorry to say but still it showing 404 on hitting localhost:7171//index . I misunderstood that system working but its not. Could you please guide me further.

            – Still Learning
            Nov 11 '18 at 5:39











          • try this localhost:7171/index tomcat is running on 7171?

            – Deadpool
            Nov 11 '18 at 6:05











          • I tried the same localhost:7171/index but 404 is coming.

            – Still Learning
            Nov 11 '18 at 6:27











          • updating code try with that @StillLearning

            – Deadpool
            Nov 11 '18 at 6:32















          2














          @Autowire Controller Bean in Configuration class and pass it through Properties




          SimpleUrlHandlerMapping is the most flexible HandlerMapping implementation. It allows for direct and declarative mapping between either bean instances and URLs or between bean names and URLs.



          Let’s map requests “/simpleUrlWelcome” and “/*/simpleUrlWelcome” to the “welcome” bean: here




          @Configuration
          public class WebConfiguration

          @Autowired
          private indexController index;

          @Bean
          public SimpleUrlHandlerMapping simpleUrlHandlerMapping()
          System.out.println("creating SimpleUrlHandlerMapping ....");
          SimpleUrlHandlerMapping simpleUrlHandlerMapping = new SimpleUrlHandlerMapping();
          simpleUrlHandlerMapping.setOrder(0);
          Properties<String,Object> urlProperties = new Properties<>();
          urlProperties.put("/index", index);

          simpleUrlHandlerMapping.setMappings(urlProperties);

          return simpleUrlHandlerMapping;




          Controller



          @Controller("index")
          public class indexController extends AbstractController

          @Override
          protected ModelAndView handleRequestInternal(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception
          System.out.println("My Controller index!");
          return null;








          share|improve this answer

























          • Thanks Deadpool! your name is super cool.

            – Still Learning
            Nov 11 '18 at 4:51











          • Hi @Deadpool, Sorry to say but still it showing 404 on hitting localhost:7171//index . I misunderstood that system working but its not. Could you please guide me further.

            – Still Learning
            Nov 11 '18 at 5:39











          • try this localhost:7171/index tomcat is running on 7171?

            – Deadpool
            Nov 11 '18 at 6:05











          • I tried the same localhost:7171/index but 404 is coming.

            – Still Learning
            Nov 11 '18 at 6:27











          • updating code try with that @StillLearning

            – Deadpool
            Nov 11 '18 at 6:32













          2












          2








          2







          @Autowire Controller Bean in Configuration class and pass it through Properties




          SimpleUrlHandlerMapping is the most flexible HandlerMapping implementation. It allows for direct and declarative mapping between either bean instances and URLs or between bean names and URLs.



          Let’s map requests “/simpleUrlWelcome” and “/*/simpleUrlWelcome” to the “welcome” bean: here




          @Configuration
          public class WebConfiguration

          @Autowired
          private indexController index;

          @Bean
          public SimpleUrlHandlerMapping simpleUrlHandlerMapping()
          System.out.println("creating SimpleUrlHandlerMapping ....");
          SimpleUrlHandlerMapping simpleUrlHandlerMapping = new SimpleUrlHandlerMapping();
          simpleUrlHandlerMapping.setOrder(0);
          Properties<String,Object> urlProperties = new Properties<>();
          urlProperties.put("/index", index);

          simpleUrlHandlerMapping.setMappings(urlProperties);

          return simpleUrlHandlerMapping;




          Controller



          @Controller("index")
          public class indexController extends AbstractController

          @Override
          protected ModelAndView handleRequestInternal(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception
          System.out.println("My Controller index!");
          return null;








          share|improve this answer















          @Autowire Controller Bean in Configuration class and pass it through Properties




          SimpleUrlHandlerMapping is the most flexible HandlerMapping implementation. It allows for direct and declarative mapping between either bean instances and URLs or between bean names and URLs.



          Let’s map requests “/simpleUrlWelcome” and “/*/simpleUrlWelcome” to the “welcome” bean: here




          @Configuration
          public class WebConfiguration

          @Autowired
          private indexController index;

          @Bean
          public SimpleUrlHandlerMapping simpleUrlHandlerMapping()
          System.out.println("creating SimpleUrlHandlerMapping ....");
          SimpleUrlHandlerMapping simpleUrlHandlerMapping = new SimpleUrlHandlerMapping();
          simpleUrlHandlerMapping.setOrder(0);
          Properties<String,Object> urlProperties = new Properties<>();
          urlProperties.put("/index", index);

          simpleUrlHandlerMapping.setMappings(urlProperties);

          return simpleUrlHandlerMapping;




          Controller



          @Controller("index")
          public class indexController extends AbstractController

          @Override
          protected ModelAndView handleRequestInternal(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception
          System.out.println("My Controller index!");
          return null;









          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Nov 11 '18 at 7:38

























          answered Nov 10 '18 at 19:49









          DeadpoolDeadpool

          4,6042326




          4,6042326












          • Thanks Deadpool! your name is super cool.

            – Still Learning
            Nov 11 '18 at 4:51











          • Hi @Deadpool, Sorry to say but still it showing 404 on hitting localhost:7171//index . I misunderstood that system working but its not. Could you please guide me further.

            – Still Learning
            Nov 11 '18 at 5:39











          • try this localhost:7171/index tomcat is running on 7171?

            – Deadpool
            Nov 11 '18 at 6:05











          • I tried the same localhost:7171/index but 404 is coming.

            – Still Learning
            Nov 11 '18 at 6:27











          • updating code try with that @StillLearning

            – Deadpool
            Nov 11 '18 at 6:32

















          • Thanks Deadpool! your name is super cool.

            – Still Learning
            Nov 11 '18 at 4:51











          • Hi @Deadpool, Sorry to say but still it showing 404 on hitting localhost:7171//index . I misunderstood that system working but its not. Could you please guide me further.

            – Still Learning
            Nov 11 '18 at 5:39











          • try this localhost:7171/index tomcat is running on 7171?

            – Deadpool
            Nov 11 '18 at 6:05











          • I tried the same localhost:7171/index but 404 is coming.

            – Still Learning
            Nov 11 '18 at 6:27











          • updating code try with that @StillLearning

            – Deadpool
            Nov 11 '18 at 6:32
















          Thanks Deadpool! your name is super cool.

          – Still Learning
          Nov 11 '18 at 4:51





          Thanks Deadpool! your name is super cool.

          – Still Learning
          Nov 11 '18 at 4:51













          Hi @Deadpool, Sorry to say but still it showing 404 on hitting localhost:7171//index . I misunderstood that system working but its not. Could you please guide me further.

          – Still Learning
          Nov 11 '18 at 5:39





          Hi @Deadpool, Sorry to say but still it showing 404 on hitting localhost:7171//index . I misunderstood that system working but its not. Could you please guide me further.

          – Still Learning
          Nov 11 '18 at 5:39













          try this localhost:7171/index tomcat is running on 7171?

          – Deadpool
          Nov 11 '18 at 6:05





          try this localhost:7171/index tomcat is running on 7171?

          – Deadpool
          Nov 11 '18 at 6:05













          I tried the same localhost:7171/index but 404 is coming.

          – Still Learning
          Nov 11 '18 at 6:27





          I tried the same localhost:7171/index but 404 is coming.

          – Still Learning
          Nov 11 '18 at 6:27













          updating code try with that @StillLearning

          – Deadpool
          Nov 11 '18 at 6:32





          updating code try with that @StillLearning

          – Deadpool
          Nov 11 '18 at 6:32

















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53241838%2fhow-to-use-simpleurlhandlermapping-with-springboot%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          𛂒𛀶,𛀽𛀑𛂀𛃧𛂓𛀙𛃆𛃑𛃷𛂟𛁡𛀢𛀟𛁤𛂽𛁕𛁪𛂟𛂯,𛁞𛂧𛀴𛁄𛁠𛁼𛂿𛀤 𛂘,𛁺𛂾𛃭𛃭𛃵𛀺,𛂣𛃍𛂖𛃶 𛀸𛃀𛂖𛁶𛁏𛁚 𛂢𛂞 𛁰𛂆𛀔,𛁸𛀽𛁓𛃋𛂇𛃧𛀧𛃣𛂐𛃇,𛂂𛃻𛃲𛁬𛃞𛀧𛃃𛀅 𛂭𛁠𛁡𛃇𛀷𛃓𛁥,𛁙𛁘𛁞𛃸𛁸𛃣𛁜,𛂛,𛃿,𛁯𛂘𛂌𛃛𛁱𛃌𛂈𛂇 𛁊𛃲,𛀕𛃴𛀜 𛀶𛂆𛀶𛃟𛂉𛀣,𛂐𛁞𛁾 𛁷𛂑𛁳𛂯𛀬𛃅,𛃶𛁼

          Edmonton

          Crossroads (UK TV series)