2016-06-01 2 views
0

im пытается запустить Java-сайт-webscript во всём мире. На первом этапе я просто хочу напечатать «hello world», используя выходной поток ответа. Основная проблема, с которой я сталкиваюсь, заключается в том, что код не выполняется. Я попытался установить контрольные точки в коде, но они не запускаются, я получаю только равный ftl в результате.alfresco webscript не выполняется код

Не должен ли отвечать abstratWebscript на ftl? Может ли кто-нибудь сказать мне, что я делаю неправильно, или если это естественное поведение abstractwebscript?

Это класс Java:

package com.beam.gbsprocs.tag.webscript; 
import java.io.IOException; 
import java.io.PrintWriter;  

import org.springframework.extensions.webscripts.AbstractWebScript; 
import org.springframework.extensions.webscripts.WebScriptRequest; 
import org.springframework.extensions.webscripts.WebScriptResponse; 

public class GbsprocsTagWebscript extends AbstractWebScript { 



    @Override 
    public void execute(WebScriptRequest req, WebScriptResponse res) 
     throws IOException { 

    PrintWriter out = new PrintWriter(res.getOutputStream()); 

    out.println("hello world"); 
    out.close(); 

    } 

} 

Это описание файла

<webscript> 
<shortname>Perform GBSprocs Tag completion</shortname> 
<description>Export gives a json list of posible tag values </description> 
<url>/gbsprocs/tag</url> 
<authentication>user</authentication> 
</webscript> 

Bean декларация (добавлена ​​в редакции):

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util" 

    xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans-2.5.xsd 
    http://www.springframework.org/schema/util 
    http://www.springframework.org/schema/util/spring-util-2.5.xsd"> 

<bean id="com.beam.gbsprocs.tag.webscript.GbsprocsTagWebscript.get" 
    class="com.beam.gbsprocs.tag.webscript.GbsprocsTagWebscript" 
     parent="webscript"> 


</bean> 

</beans> 

И FTL выглядит следующим образом:

Hello from ftl. 

Исполнительное Результат: rest client response

+0

Где весна определение компонента для вашего класса WebScript? – Gagravarr

+0

Как ваш веб-скрипт знает, какой класс Java должен вызывать, где вы подключили свой дескриптор XML с помощью GbsprocsTagWebscript.java? – Lista

ответ

1

Использование org.springframework.extensions.webscripts.DeclarativeWebScript вместо AbstractWebScript

и @Override метода защищенной Карты executeImpl (WebScriptRequest REQ, статус состояния, кэш Cache), который возвращает ваш модель FTL

А также вам нужно добавить фасоль deffenition на классе

+0

Я знаю, что он может работать таким образом, но мне интересно, возможно ли это сделать с помощью AbstractWebscript. (Я добавил определение весеннего компонента, чтобы иметь все данные) –

Смежные вопросы