警告:JSF1091:找不到文件dynamiccontent的mime类型

时间:2013-02-20 15:51:14

标签: jsf primefaces dynamic-content graphicimage

我在eclipse下收到以下警告:

WARNING: JSF1091: No mime type could be found for file dynamiccontent. To resolve this, add a mime-type mapping to the applications web.xml

发布图片时会导致此错误

在primefaces composant下面:

<p:graphicImage  value="#{bean.image}"/>

Java Bean:

private StreamedContent image;

// Getter
public StreamedContent getImage() {
    try {
        JFreeChart jfreechart = ChartFactory.createPieChart3D("",
                        createDataset(), true, true, false);

        PiePlot3D plot = (PiePlot3D) jfreechart.getPlot();

        File chartFile = new File("dynamichart");
        ChartUtilities.saveChartAsPNG(chartFile, jfreechart, 375, 300);
        chartImage = new DefaultStreamedContent(new FileInputStream(
                        chartFile), "image/png");
        return chartImage;
    } catch (Exception e) {
        e.printStackTrace();
        return new DefaultStreamedContent();
    }
}

// generate data for image
public static PieDataset createDataset() {
    DefaultPieDataset dataset = new DefaultPieDataset();
    dataset.setValue("A",10);
    dataset.setValue("B", 11);
    dataset.setValue("C", 80);
    dataset.setValue("D", 12);
    return dataset;
}

7 个答案:

答案 0 :(得分:5)

尝试将以下内容添加到您的web.xml文件

<mime-mapping>
    <extension>jsp <!--{or the extension of file}--></extension>
    <mime-type>text/html</mime-type>
  </mime-mapping>

答案 1 :(得分:4)

我找到了一个解决方案。

使用最新版本的primefaces(3.5)。

<dependency>  
    <groupId>org.primefaces</groupId>  
    <artifactId>primefaces</artifactId>  
    <version>3.5</version>  
</dependency> 

但IHM会有令人不快的变化

答案 2 :(得分:1)

我对http://example.orgjavascript:;也有JSF1091警告,使用Icefaces代替Primefaces。

更改

<ice:outputLink onclick="..." value="javascript:;">...</ice:outputLink>

<ice:outputLink onclick="..." value="/some/url">...</ice:outputLink>

javascript:;的警告进行了沉默。

更改

<ice:outputLink value="http://example.org"/>

<a href="http://example.org"/>

修复了网址。

答案 3 :(得分:1)

虽然我会在一段时间后发布这个答案,但对于遇到此问题的其他开发人员来说这可能会有用。

为了避免从上面发出恼人的警告,请将以下代码添加到您的web.xml中:

<mime-mapping>
<extension>png</extension>
<mime-type>image/png</mime-type>
</mime-mapping>

有关详细信息,请查看:

http://blog.eisele.net/2011/01/weblogic-10340-oepe-maven-primefaces.html

答案 4 :(得分:0)

我只想与类似的问题分享我的经验,我使用mavennetbeanspayara。一旦我收到这个警告:

  

警告找不到文件fontawesome-webfont.woff记录的mime类型

删除此警告的解决方案是将以下代码添加到web.xml

<mime-mapping>
    <extension>woff</extension>
    <mime-type>application/font-woff</mime-type>
</mime-mapping>

注意:我对不同的文件发出了相同的警告,这些文件有不同的扩展名(woff, eot, woff2 and ttf)。对此的解决方案是使用前面提到的扩展之一替换woff中的<extension>

我希望有一天我的回答会对某人有所帮助。

PS:我在page找到了解决方案。

答案 5 :(得分:0)

如果你有春天,你也可以(我添加了大多数fa-Icons):

HasOptional(m => m.Parent)
                .WithMany(m => m.ChildMenuItems)
                .HasForeignKey(m => m.ParentId)
                .WillCascadeOnDelete(false);

答案 6 :(得分:0)

对于Spring Boot 2:

@Configuration
public class JsfConfigurationMimeMapper implements WebServerFactoryCustomizer<ConfigurableServletWebServerFactory> {

    @Override
    public void customize(ConfigurableServletWebServerFactory factory) {
        MimeMappings mappings = new MimeMappings(MimeMappings.DEFAULT);
        mappings.add("xsd", "text/xml; charset=utf-8");
        mappings.add("otf", "font/opentype");
        mappings.add("ico", "image/x-icon");
        mappings.add("svg", "image/svg+xml");
        mappings.add("eot", "application/vnd.ms-fontobject");
        mappings.add("ttf", "application/x-font-ttf");
        mappings.add("woff", "application/x-font-woff");
        mappings.add("woff2", "application/x-font-woff2");
        mappings.add("xhtml", "application/xml");
        factory.setMimeMappings(mappings);

    }
}