小编Sko*_*vly的帖子

IBM Cognos Report Studio:从提示"default text"参数中选择值提示默认值

我有一个引用参数'Year_Parameter'的值提示符,以及一个列有一列(数据项表达式)的列表,它以这种方式引用与值提示符相同的参数:

#prompt('Year_Parameter')#
Run Code Online (Sandbox Code Playgroud)

值提示有一些静态选择:2011年,2012年和2013年.因此,当我运行我的报告,并在显示报告页面之前弹出的提示页面中输入2012时,会在值提示中自动选择2012显示报告页面时的选项列表.

此外,如果我将2012放入默认选择列表中,则不会显示任何提示页面,并且现在还会在显示报告时自动选择2012作为值提示.

但是,如果我从默认选择列表中删除2012,并将我的数据项表达式更改为以下任一表达式:

#prompt('Year_Parameter', 'token', '2012')#
#prompt('Year_Parameter', 'token', 2012)#
#prompt('Year_Parameter', 'string', 2012)#
#prompt('Year_Parameter', 'string', '2012')#
Run Code Online (Sandbox Code Playgroud)

...当2012被指定为默认选择时,没有弹出提示页面,但是没有为值提示自动选择值.值提示显示其默认标题文本:参数名称 - Year_Parameter".

记住提示函数定义:

prompt(prompt_name,datatype,defaultText,text,queryItem,trailing_text)

任何人都知道为什么会这样,更重要的是如何通过在数据项表达式中指定它来为如何选择值提示的默认选择的解决方案?

是因为prompt()宏只是尝试获取参数'Year_Parameter'的值,但是它本身不会用值填充参数?该参数必须由某个值提示符给出(在提示页面上或嵌入在报表页面中).

因此,提示函数的defaultText参数将永远不会填充参数本身,但在参数没有(有效)值的情况下由此特定提示函数返回?

非常感谢您的任何输入!

编辑:找到有关如何为参数动态分配默认值的说明.

http://cognosknowhow.blogspot.no/2013/04/how-to-dynamically-set-up-default-value.html

最后:我最终使用以下Javascript来动态选择值提示并更新报告:

<script type="text/javascript">
// This function updates the report dynamically for the current year
// The function is wrapped inside a setTimeout call in order to avoid an error caused by too frequent requests
setTimeout(function updatePrompt() {
    var oCR = cognos.Report.getReport("_THIS_");
    var yearPrompt = oCR.prompt.getControlByName("YearPrompt");
    var selectedValue = yearPrompt.getValues()[0];

    if (typeof …
Run Code Online (Sandbox Code Playgroud)

cognos cognos-bi cognos-10

5
推荐指数
1
解决办法
3万
查看次数

Maven部署:找不到Java类java.lang.String(...)的消息体编写器

我和小组刚从一些没有时间继续的人手中接过了一个开发项目.该项目包括一个使用jersey和jetty的RESTful服务器,以及一个java客户端.不幸的是,它们不可用,我们一直试图部署服务器.

他们一直在使用eclipse进行开发,而对于服务器项目,maven已经被用来处理依赖关系.他们没有使用maven来部署.jar文件,但是他们只是通过eclipse提取它们.

我们使用maven-install创建了一个jar文件,只是通过Eclipse导出.在这两种情况下,我们设法启动并运行,但是当我们启动客户端时,我们在服务器上收到以下错误:

Caused by: com.sun.jersey.api.MessageException: A message body writer for Java class java.lang.String, and Java type class java.lang.String, and MIME media type text/plain was not found
Run Code Online (Sandbox Code Playgroud)

如果我们尝试通过常规浏览器访问Web服务,也会发生同样的情况.

但是,当通过Eclipse运行项目时,如"运行方式" - >"Java应用程序",它可以工作.

我已经阅读了很多帖子,包括Java类的消息体编写器......并且找不到MIME媒体类型text/html,并且我添加了jersey-json依赖项,但是发生了同样的错误.

资源以这种方式定义:

@Path("/{token}/users")
public class Users {

@GET
@Path("/show/{username}")
@Produces("text/plain")
public String getUser(@PathParam("username") String username, 
                      @PathParam("token") String token) {
(...)

}
Run Code Online (Sandbox Code Playgroud)

我们还没有研究过实际的HTTP请求/响应,但是如果有人认为来自那些的任何信息会很有趣,那么可能会这样做.

谢谢你的帮助!任何输入都表示赞赏!

编辑:使用maven-assembly进行部署,POM文件包含此(以及更多):

 <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <configuration>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
        <archive>
            <manifest>
                <mainClass>no.abakus.backup.abacash.webservice.AbaCashCoreLauncher</mainClass>
            </manifest>
        </archive>
    </configuration>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)

java eclipse jetty jersey maven

3
推荐指数
1
解决办法
5700
查看次数

标签 统计

cognos ×1

cognos-10 ×1

cognos-bi ×1

eclipse ×1

java ×1

jersey ×1

jetty ×1

maven ×1