2016-11-25 3 views
0

TextMessage(org.springframework.web.socket.TextMessage)のコピーを作成しますが、IDE(Eclipseリリース4.5.2)では3つのエラーが発生します。spring-websocket TextMessageのコピーですが、エラー

TextMessage in spring framework

ご覧のとおり、唯一の変更はパッケージです。

package com.hzh.h5.server.util; 

import java.nio.charset.Charset; 

import org.springframework.web.socket.AbstractWebSocketMessage; 

public final class TextMessage extends AbstractWebSocketMessage<String> { 

private static final Charset UTF8_CHARSET = Charset.forName("UTF-8"); 

private final byte[] bytes; 

public TextMessage(CharSequence payload) { 
    super(payload.toString(), true); 
    this.bytes = null; 
} 

public TextMessage(byte[] payload) { 
    super(new String(payload, UTF8_CHARSET)); 
    this.bytes = payload; 
} 

public TextMessage(CharSequence payload, boolean isLast) { 
    super(payload.toString(), isLast); 
    this.bytes = null; 
} 


@Override 
public int getPayloadLength() { 
    return asBytes().length; 
} 

public byte[] asBytes() { 
    return (this.bytes != null ? this.bytes : getPayload().getBytes(UTF8_CHARSET)); 
} 

@Override 
protected String toStringPayload() { 
    String payload = getPayload(); 
    return (payload.length() > 10 ? payload.substring(0, 10) + ".." : payload); 
} 

}

エラーチップがこのようなもので、 'コンストラクタAbstractWebSocketMessage(T)が見えません'。 error tip

なぜ私はエラーが発生しましたが、spring-websocketはありませんか?

答えて

0

AbstractWebSocketMessageクラスはpublic、 ですが、コンストラクタはパッケージスコープです。 したがって、あなたのコードに「見えません」。

AbstractWebSocketを拡張する2つのクラスは、TextMessageとBinaryMessageです(最終的です)

関連する問題