Ahi lo modifique como estaba y quedo asi:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="local.model.Pedido" table="pedidos">
<id column="codigo" name="codigo">
<generator class="native"/>
</id>
<many-to-one name="cliente" column="codigo_cliente" class="local.model.Cliente" not-null="true"/>
<property column="estado" name="estado" />
<!-- <set name="listadodeproductos" inverse="true" lazy="true" cascade="all">
<key column="codigo_pedido"/>
<one-to-many class="local.model.ProductoForm"/>
</set>-->
<set name="listadodeproductos" table="detalle_pedidos" inverse="true" fetch="select">
<key>
<column name="codigo_pedido" not-null="true" />
</key>
<one-to-many class="local.model.ProductoForm" />
</set>
</class>
</hibernate-mapping>
Me guarda el pedido, pero el detalle no... me fijo las sentencias que realiza a la bd y solo hace la siguiente:
-Hibernate: insert into pedidos (codigo_cliente, estado) values (?, ?)
Por lo cual nunca accede a hacer el insert a la tabla detalle_pedido