2017-01-07 8 views
0

Я создал ресурс:/accounts/{accountId}, который использует классы AccountServerResource.class, AccountPage.class и шаблон accountPage.ftl.Как добавить изображение в шаблон Restlet?

Только для целей тестирования я создал очень простой шаблон, содержащий только одну строку:

<h1>Hello world</h1>

Страница локальный: 8111/счета/21 отображается правильно.

Теперь я хочу пойти дальше и добавить дополнительную информацию к ресурсу. То, что я пытался сделать первым, было добавление изображения в шаблон:

<h1>Hello, world</h1> <img src="img/user21.jpg">

Но на этот раз не отображается изображение. У меня есть ошибка: ресурс localhost: 8111/accounts/21/img/user21.jpg не найден. Папка img хранится в папке, содержащей все файлы * .class и * .ftl.

Как я могу открыть изображение на моей странице шаблона?

ответ

0
public class TestStaticFile { 
    public static void main(String[] args) { 
     Component component = new Component(); 
     Application application = new Application() { 
      @Override 
      public Restlet createInboundRoot() { 
       Directory dir = new Directory(getContext(), "file:///d:/test"); 
       dir.setListingAllowed(true); 
       return dir; 
      } 
     }; 
     component.getServers().add(new Server(Protocol.HTTP, 8888)); 
     component.getClients().add(Protocol.FILE); 
     component.getDefaultHost().attach(application); 
     try { 
      component.start(); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } 
} 

Если путь изображения D:/test/test.jpg, теперь вы можете получить доступ с URL: http://127.0.0.1:8888/test.jpg.

Вы можете сослаться на ссылку изображения, которое вы хотите отобразить в теге img. Restlet поддерживает статические файлы. Сохраните изображение в указанной папке, а затем обратитесь к нему в свой код.

Static files руководство по установке в руководстве пользователя может помочь.