Valor default,timestamp E JPA...Dúvidas

Tenho uma tabela no banco com a seguinte estrutura:

CREATE TABLE ESTADO
(
   ID SERIAL NOT NULL,
   SIGLA VARCHAR(5) NOT NULL,
   NOME VARCHAR(30) NOT NULL,  
   EXCLUSAO CHAR(1) DEFAULT '1', --(0) PARA EXCLUÍDO E (1) PARA EXCLUÍDO
   DATA_ALTERACAO TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
   OBSERVACAO VARCHAR(50) NOT NULL,  
   CONSTRAINT ESTADO_PKEY PRIMARY KEY (ID),
   CONSTRAINT ESTADO_UNIQ UNIQUE (SIGLA)
);

Em que desejo que o campo EXCLUSAO gere automaticamente em cada insert o valor 1, ou seja, o programador não precisaria colocar no insert o EXCLUSAO.

Tbm tenho um campo DATA_ALTERACAO que gera automaticamente a cada insert a data e hora do servidor.

Pois bem, estou usando (aprendendo) JPA e defini minha classe da seguinte forma:

@Entity
public class Estado
{
	@Id
	@Column (insertable = false)
	@GeneratedValue (strategy = GenerationType.SEQUENCE, generator = "estado_id_seq")	
	private int id;
	private String sigla;
	private String nome;	
	@Column (insertable = false)
	@GeneratedValue (strategy = GenerationType.IDENTITY)
	private int exclusao;	
	private String observacao;	
	@Temporal(TemporalType.TIMESTAMP)
	@Column (insertable = false)	
	@GeneratedValue (strategy = GenerationType.SEQUENCE)
	private Date data_alteracao;

        ...Getters and Setters
}

Dessa forma, todo vez que tento persistir aparece um erro:
ERRO: valor nulo na coluna “data_alteracao” viola a restrição não-nulaError Code: 0
Call:INSERT INTO ESTADO (EXCLUSAO, OBSERVACAO, NOME, DATA_ALTERACAO, SIGLA) VALUES (?, ?, ?, ?, ?)
bind => [0, , AMAZONAS, null, AM]

Além de exibir msg informando que a data naum pode ser not null, pode-se notar q o valor p exclusão vai como 0 (zero), quando na realidade defini no SGBD valor 1 (um).

O q estou fazendo errado? O q estou querendo fazer é de outra forma?

Desde já agradeço a atenção e colaboração de todos!